;Imports of g_main_mp:
	extern _Z17Dvar_RegisterBoolPKchtS0_
	extern _Z19Dvar_RegisterStringPKcS0_tS0_
	extern _Z16Dvar_RegisterIntPKciiitS0_
	extern g_dedicatedEnumNames
	extern _Z17Dvar_RegisterEnumPKcPS0_itS0_
	extern _Z18Dvar_RegisterFloatPKcffftS0_
	extern _Z18Dvar_RegisterColorPKcfffftS0_
	extern _Z24Helicopter_RegisterDvarsv
	extern _Z18G_VehRegisterDvarsv
	extern _Z22G_RegisterMissileDvarsv
	extern _Z27G_RegisterMissileDebugDvarsv
	extern _Z16BG_RegisterDvarsv
	extern _Z20Com_ServerDObjCreateP11DObjModel_stP11XAnimTree_si
	extern _Z17Com_GetServerDObji
	extern _Z22Com_SafeServerDObjFreei
	extern _Z11G_RunClientP9gentity_s
	extern _Z12G_FreeEntityP9gentity_s
	extern _Z15SV_UnlinkEntityP9gentity_s
	extern _Z9G_RunItemP9gentity_s
	extern _Z13G_GeneralLinkP9gentity_s
	extern _Z10G_RunMoverP9gentity_s
	extern _Z12G_RunMissileP9gentity_s
	extern _Z9Com_Error11errorParm_tPKcz
	extern _Z11G_RunCorpseP9gentity_s
	extern _Z19G_GetEntityTypeNamePK9gentity_s
	extern _Z2vaPKcz
	extern colorWhiteFaded
	extern _Z17CL_AddDebugStringPKfS0_fPKcii
	extern _Z15BG_GetWeaponDefj
	extern colorRedFaded
	extern _Z10Com_PrintfiPKcz
	extern _Z9Swap_Initv
	extern _ZN9EntHandle4InitEv
	extern memset
	extern _Z8ms_srandj
	extern _Z9Rand_Initi
	extern _Z15GScr_LoadConstsv
	extern _Z16G_SetupWeaponDefv
	extern _Z12Dvar_GetBoolPKc
	extern _Z15G_ProcessIPBansv
	extern _Z12SV_XModelGetPKc
	extern _Z18FS_FOpenFileByModePKcPi8fsMode_t
	extern _Z16Com_PrintWarningiPKcz
	extern _Z18Mantle_CreateAnimsPFPviE
	extern bgs
	extern _Z18SV_GetConfigstringiPci
	extern _Z19Info_SetValueForKeyPcPKcS1_
	extern _Z18SV_SetConfigstringiPKc
	extern _Z17SV_LocateGameDataP9gentity_siiP13playerState_si
	extern _Z21G_ParseHitLocDmgTablev
	extern _Z28BG_LoadPenetrationDepthTablev
	extern _Z14G_VehiclesIniti
	extern _Z13G_InitTurretsv
	extern _Z25G_SpawnEntitiesFromStringv
	extern _Z26G_VehiclesSetupSpawnedEntsv
	extern _Z8G_setfogPKc
	extern _Z16G_InitObjectivesv
	extern _Z22Missile_InitAttractorsv
	extern _Z18Scr_FreeEntityListv
	extern _Z14Scr_InitSystemi
	extern _Z14Scr_SetLoadingi
	extern _Z21Scr_AllocGameVariablev
	extern _Z13G_LoadStructsv
	extern _Z16Scr_LoadGameTypev
	extern _Z13Scr_LoadLevelv
	extern _Z19Scr_StartupGameTypev
	extern g_scr_data
	extern _Z21SaveRegisteredWeaponsv
	extern _Z19SaveRegisteredItemsv
	extern _Z16SV_GetServerinfoPci
	extern _Z18Com_FindSoundAliasPKc
	extern _Z17G_AnimScriptSoundiP16snd_alias_list_t
	extern _Z16GScr_LoadScriptsv
	extern _Z11BG_LoadAnimv
	extern _Z15XAnimCreateTreeP7XAnim_sPFPviE
	extern _Z18Dvar_SetCheatStatev
	extern _Z15G_TouchTriggersP9gentity_s
	extern _Z21SV_DObjInitServerTimeP9gentity_sf
	extern Com_Memcpy
	extern _Z21Scr_RunCurrentThreadsv
	extern _Z13Scr_AddStringPKc
	extern scr_const
	extern _Z10Scr_NotifyP9gentity_stj
	extern _Z14PM_IsSprintingPK13playerState_s
	extern _Z11Scr_IncTimev
	extern _Z21SV_ResetSkeletonCachev
	extern _Z20HudElem_UpdateClientP9gclient_si16hudelem_update_t
	extern _Z14ClientEndFrameP9gentity_s
	extern _Z15CheckTeamStatusv
	extern _Z18SV_DObjDisplayAnimP9gentity_sPKc
	extern _Z13Scr_AddEntityP9gentity_s
	extern _Z22G_DObjUpdateServerTimeP9gentity_si
	extern _Z14SendScoreboardP9gentity_s
	extern _Z18SL_ConvertToStringj
	extern _Z12Dvar_SetBoolPK6dvar_sh
	extern vsnprintf
	extern _Z11Com_sprintfPciPKcz
	extern _Z8FS_WritePKvii
	extern vec3_origin
	extern _Z13SV_SightTracePiPKfS1_S1_S1_iii
	extern qsort
	extern _ZN9EntHandle6setEntEP9gentity_s
	extern _Z18HudElem_DestroyAllv
	extern _Z18Scr_IsSystemActiveh
	extern _Z18Scr_ShutdownSystemhi
	extern Z_VirtualFreeInternal
	extern _ZN9EntHandle8ShutdownEv
	extern _Z13FS_FCloseFilei
	extern _Z20Mantle_ShutdownAnimsv
	extern _Z16GScr_FreeScriptsv
	extern _Z15Scr_FreeScriptsh
	extern _Z13XAnimFreeTreeP11XAnimTree_sPFvPviE
	extern _Z24Com_FreeWeaponInfoMemoryi
	extern Hunk_ClearToMarkLow
	extern _Z23SV_FreeClientScriptPersv
	extern _Z23SV_SetupIgnoreEntParamsP15IgnoreEntParamsi
	extern _Z8SV_TraceP7trace_tPKfS2_S2_S2_PK15IgnoreEntParamsiiPhi
	extern _Z21Hunk_AllocLowInternali
	extern _Z14SV_TracePassedPKfS0_S0_S0_iiiiPhi
	extern ceilf
	extern _Z24SV_GameSendServerCommandi11svscmd_typePKc
	extern _Z12Cbuf_AddTextiPKc
	extern _Z11Touch_MultiP9gentity_sS0_i
	extern _Z8hurt_useP9gentity_sS0_S0_
	extern _Z10hurt_touchP9gentity_sS0_i
	extern _Z18Use_trigger_damageP9gentity_sS0_S0_
	extern _Z19Pain_trigger_damageP9gentity_sS0_iPKfiS2_13hitLocation_ti
	extern _Z18Die_trigger_damageP9gentity_sS0_S0_iiiPKf13hitLocation_ti
	extern _Z19Reached_ScriptMoverP9gentity_s
	extern _Z16G_ExplodeMissileP9gentity_s
	extern _Z15Touch_Item_AutoP9gentity_sS0_i
	extern _Z18G_TimedObjectThinkP9gentity_s
	extern _Z10player_dieP9gentity_sS0_S0_iiiPKf13hitLocation_ti
	extern _Z18G_PlayerControllerPK9gentity_sPi
	extern _Z7BodyEndP9gentity_s
	extern _Z17turret_think_initP9gentity_s
	extern _Z10turret_useP9gentity_sS0_S0_
	extern _Z17turret_controllerPK9gentity_sPi
	extern _Z12turret_thinkP9gentity_s
	extern _Z21DroppedItemClearOwnerP9gentity_s
	extern _Z18FinishSpawningItemP9gentity_s
	extern _Z15use_trigger_useP9gentity_sS0_S0_
	extern _Z21G_VehEntHandler_ThinkP9gentity_s
	extern _Z21G_VehEntHandler_TouchP9gentity_sS0_i
	extern _Z19G_VehEntHandler_UseP9gentity_sS0_S0_
	extern _Z20G_VehEntHandler_PainP9gentity_sS0_iPKfiS2_13hitLocation_ti
	extern _Z19G_VehEntHandler_DieP9gentity_sS0_S0_iiiPKf13hitLocation_ti
	extern _Z26G_VehEntHandler_ControllerPK9gentity_sPi
	extern _Z16Helicopter_ThinkP9gentity_s
	extern _Z15Helicopter_PainP9gentity_sS0_iPKfiS2_13hitLocation_ti
	extern _Z14Helicopter_DieP9gentity_sS0_S0_iiiPKf13hitLocation_ti
	extern _Z21Helicopter_ControllerPK9gentity_sPi

;Exports of g_main_mp:
	global g_clients
	global g_entinfoNames
	global _ZZ15G_RegisterDvarsvE28MY_DEFAULT_USEHOLDSPAWNDELAY
	global _Z15G_RegisterDvarsv
	global _Z12G_CreateDObjP11DObjModel_stP11XAnimTree_siiP12clientInfo_t
	global _Z9G_GetDObjii
	global _Z14G_SafeDObjFreeii
	global _Z9SortRanksPKvS0_
	global _Z19G_RunFrameForEntityP9gentity_s
	global _Z14ShowEntityInfov
	global _Z10G_InitGameiiii
	global _Z10G_RunFramei
	global _Z10G_RunThinkP9gentity_s
	global _Z11G_LogPrintfPKcz
	global _Z12G_SightTracePiPKfS1_ii
	global _Z14CalculateRanksv
	global _Z14G_ShutdownGamei
	global _Z14G_TraceCapsuleP7trace_tPKfS2_S2_S2_ii
	global _Z15G_GetClientSizev
	global _Z16G_AddDebugStringPKfS0_fPKci
	global _Z16G_GetClientScorei
	global _Z16G_GetClientStatei
	global _Z16G_GetPlayerStatei
	global _Z16G_GetSavePersistv
	global _Z16G_SetSavePersisti
	global _Z17G_LocationalTraceP7trace_tPKfS2_iiPh
	global _Z21Hunk_AllocXAnimServeri
	global _Z22G_GetClientArchiveTimei
	global _Z22G_GetFogOpaqueDistSqrdv
	global _Z22G_SetClientArchiveTimeii
	global _Z22G_TraceCapsuleCompletePKfS0_S0_S0_ii
	global _Z23G_ExitAfterConnectPathsv
	global _Z23G_LocationalTracePassedPKfS0_iiiPh
	global _Z30G_LocationalTraceAllowChildrenP7trace_tPKfS2_iiPh
	global _Z9CheckVotev
	global _Z9ExitLevelv
	global g_compassShowEnemies
	global bullet_penetrationEnabled
	global g_debugLocDamage
	global g_entities
	global level
	global g_dropForwardSpeed
	global g_dropHorzSpeedRand
	global g_dropUpSpeedBase
	global g_dropUpSpeedRand
	global g_maxDroppedWeapons
	global pickupPrints
	global entityHandlers
	global g_minGrenadeDamageSpeed
	global g_banIPs
	global g_dedicated
	global g_antilag
	global melee_debug
	global g_useholdspawndelay
	global g_useholdtime
	global player_MGUseRadius
	global player_throwbackInnerRadius
	global player_throwbackOuterRadius
	global g_NoScriptSpam
	global g_fogColorReadOnly
	global g_fogHalfDistReadOnly
	global g_fogStartDistReadOnly
	global g_maxclients
	global level_bgs
	global g_debugDamage
	global radius_damage_debug
	global g_allowVote
	global g_cheats
	global g_deadChat
	global g_oldVoting
	global g_gravity
	global g_motd
	global g_clonePlayerMaxVelocity
	global g_knockback
	global g_voiceChatTalkingDuration
	global g_inactivity
	global g_mantleBlockTimeBuffer
	global g_playerCollisionEjectSpeed
	global g_smoothClients
	global g_speed
	global g_synchronousClients
	global g_ScoresColor_Allies
	global g_ScoresColor_Axis
	global g_ScoresColor_EnemyTeam
	global g_ScoresColor_Free
	global g_ScoresColor_MyTeam
	global g_ScoresColor_Spectator
	global g_TeamColor_Allies
	global g_TeamColor_Axis
	global g_TeamColor_EnemyTeam
	global g_TeamColor_Free
	global g_TeamColor_MyTeam
	global g_TeamColor_Spectator
	global g_TeamIcon_Allies
	global g_TeamIcon_Axis
	global g_TeamIcon_Free
	global g_TeamIcon_Spectator
	global g_TeamName_Allies
	global g_TeamName_Axis
	global g_debugBullets
	global g_dumpAnims
	global g_entinfo
	global g_friendlyNameDist
	global g_friendlyfireDist
	global g_listEntity
	global g_log
	global g_logSync
	global g_password
	global g_redCrosshairs
	global g_voteAbstainWeight
	global voice_deadChat
	global voice_global
	global voice_localEcho


SECTION .text


;G_RegisterDvars()
_Z15G_RegisterDvarsv:
	push ebp
	mov ebp, esp
	push edi
	push esi
	push ebx
	sub esp, 0x2c
	mov dword [esp+0xc], _cstring_enable_cheats
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_sv_cheats
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_cheats], eax
	mov dword [esp+0xc], _cstring_the_name_of_the_
	mov dword [esp+0x8], 0x44
	mov dword [esp+0x4], _cstring_call_of_duty_4
	mov dword [esp], _cstring_gamename
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov dword [esp+0xc], _cstring_the_date_compile
	mov dword [esp+0x8], 0x40
	mov dword [esp+0x4], _cstring_feb_12_2009
	mov dword [esp], _cstring_gamedate
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov dword [esp+0xc], _cstring_the_current_map_
	mov dword [esp+0x8], 0x44
	mov dword [esp+0x4], _cstring_null
	mov dword [esp], _cstring_sv_mapname
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov dword [esp+0xc], _cstring_the_current_camp
	mov dword [esp+0x8], 0x24
	mov dword [esp+0x4], _cstring_war
	mov dword [esp], _cstring_g_gametype
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_gametype], eax
	mov dword [esp+0x14], _cstring_the_maximum_numb
	mov dword [esp+0x10], 0x25
	mov dword [esp+0xc], 0x40
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x20
	mov dword [esp], _cstring_ui_maxclients
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov dword [esp+0x14], _cstring_the_maximum_numb
	mov dword [esp+0x10], 0x25
	mov eax, [eax+0xc]
	mov [esp+0xc], eax
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x20
	mov dword [esp], _cstring_sv_maxclients
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_maxclients], eax
	mov dword [esp+0xc], _cstring_call_client_thin
	mov dword [esp+0x8], 0x8
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_synchronouscli
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_synchronousClients], eax
	mov dword [esp+0xc], _cstring_log_file_name
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], _cstring_games_mplog
	mov dword [esp], _cstring_g_log
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_log], eax
	mov dword [esp+0xc], _cstring_enable_synchrono
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_logsync
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_logSync], eax
	mov dword [esp+0xc], _cstring_password
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], _cstring_null
	mov dword [esp], _cstring_g_password
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_password], eax
	mov dword [esp+0xc], _cstring_ip_addresses_to_
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], _cstring_null
	mov dword [esp], _cstring_g_banips
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_banIPs], eax
	mov ebx, g_dedicatedEnumNames
	mov dword [esp+0x10], _cstring_dedicated_server
	mov dword [esp+0xc], 0x20
	mov dword [esp+0x8], 0x0
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_dedicated
	call _Z17Dvar_RegisterEnumPKcPS0_itS0_
	mov [g_dedicated], eax
	mov eax, [eax+0xc]
	test eax, eax
	jz _Z15G_RegisterDvarsv_10
	mov dword [esp+0x10], _cstring_dedicated_server
	mov dword [esp+0xc], 0x40
	mov dword [esp+0x8], 0x0
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_dedicated
	call _Z17Dvar_RegisterEnumPKcPS0_itS0_
_Z15G_RegisterDvarsv_10:
	mov dword [esp+0x14], _cstring_player_speed
	mov dword [esp+0x10], 0x0
	mov dword [esp+0xc], 0x7fffffff
	mov dword [esp+0x8], 0x80000000
	mov dword [esp+0x4], 0xbe
	mov dword [esp], _cstring_g_speed
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_speed], eax
	mov dword [esp+0x14], _cstring_game_gravity_in_
	mov dword [esp+0x10], 0x0
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x3f800000
	mov dword [esp+0x4], 0x44480000
	mov dword [esp], _cstring_g_gravity
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_gravity], eax
	mov dword [esp+0x14], _cstring_maximum_knockbac
	mov dword [esp+0x10], 0x0
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0xff7fffff
	mov esi, 0x447a0000
	mov [esp+0x4], esi
	mov dword [esp], _cstring_g_knockback
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_knockback], eax
	mov dword [esp+0x14], _cstring_maximum_number_o
	mov dword [esp+0x10], 0x0
	mov dword [esp+0xc], 0x20
	mov dword [esp+0x8], 0x2
	mov dword [esp+0x4], 0x10
	mov dword [esp], _cstring_g_maxdroppedweap
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_maxDroppedWeapons], eax
	mov dword [esp+0x14], _cstring_time_delay_befor
	mov dword [esp+0x10], 0x0
	mov dword [esp+0xc], 0x7fffffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_inactivity
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_inactivity], eax
	mov dword [esp+0xc], _cstring_show_debug_infor
	mov dword [esp+0x8], 0x80
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_debugdamage
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_debugDamage], eax
	mov dword [esp+0x14], _cstring_show_debug_infor1
	mov dword [esp+0x10], 0x80
	mov dword [esp+0xc], 0x6
	mov dword [esp+0x8], 0xfffffffd
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_debugbullets
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_debugBullets], eax
	mov dword [esp+0xc], _cstring_enabledisable_bu
	mov dword [esp+0x8], 0x80
	mov dword [esp+0x4], 0x1
	mov dword [esp], _cstring_bullet_penetrati
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [bullet_penetrationEnabled], eax
	mov dword [esp+0x10], _cstring_display_entity_i
	mov dword [esp+0xc], 0x80
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], g_entinfoNames
	mov dword [esp], _cstring_g_entinfo
	call _Z17Dvar_RegisterEnumPKcPS0_itS0_
	mov [g_entinfo], eax
	mov dword [esp+0xc], _cstring_the_message_of_t
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], _cstring_null
	mov dword [esp], _cstring_g_motd
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_motd], eax
	mov dword [esp+0x14], _cstring_speed_at_which_t
	mov dword [esp+0x10], 0x1
	mov dword [esp+0xc], 0x7d00
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x19
	mov dword [esp], _cstring_g_playercollisio
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_playerCollisionEjectSpeed], eax
	mov dword [esp+0x14], _cstring_forward_speed_of
	mov dword [esp+0x10], 0x1
	mov [esp+0xc], esi
	mov dword [esp+0x8], 0x0
	mov ebx, 0x41200000
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_g_dropforwardspe
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_dropForwardSpeed], eax
	mov dword [esp+0x14], _cstring_base_component_o
	mov dword [esp+0x10], 0x1
	mov [esp+0xc], esi
	mov dword [esp+0x8], 0x0
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_g_dropupspeedbas
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_dropUpSpeedBase], eax
	mov dword [esp+0x14], _cstring_random_component
	mov dword [esp+0x10], 0x1
	mov [esp+0xc], esi
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x40a00000
	mov dword [esp], _cstring_g_dropupspeedran
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_dropUpSpeedRand], eax
	mov dword [esp+0x14], _cstring_random_component1
	mov dword [esp+0x10], 0x1
	mov [esp+0xc], esi
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x42c80000
	mov dword [esp], _cstring_g_drophorzspeedr
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_dropHorzSpeedRand], eax
	mov dword [esp+0x14], _cstring_maximum_velocity
	mov dword [esp+0x10], 0x1
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x42a00000
	mov dword [esp], _cstring_g_cloneplayermax
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_clonePlayerMaxVelocity], eax
	mov dword [esp+0xc], _cstring_send_voice_messa
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_voice_global
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [voice_global], eax
	mov dword [esp+0xc], _cstring_echo_voice_chat_
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_voice_localecho
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [voice_localEcho], eax
	mov dword [esp+0xc], _cstring_allow_dead_playe
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_voice_deadchat
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [voice_deadChat], eax
	mov dword [esp+0xc], _cstring_enable_voting_on
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x1
	mov dword [esp], _cstring_g_allowvote
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_allowVote], eax
	mov dword [esp+0xc], _cstring_list_the_entitie
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_listentity
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_listEntity], eax
	mov dword [esp+0xc], _cstring_allow_dead_playe1
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_deadchat
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_deadChat], eax
	mov dword [esp+0x14], _cstring_time_after_the_l
	mov dword [esp+0x10], 0x1
	mov dword [esp+0xc], 0x2710
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x1f4
	mov dword [esp], _cstring_g_voicechattalki
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_voiceChatTalkingDuration], eax
	mov dword [esp+0xc], _cstring_shader_name_for_
	mov dword [esp+0x8], 0x100
	mov dword [esp+0x4], _cstring_faction_128_usmc
	mov dword [esp], _cstring_g_teamicon_allie
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_TeamIcon_Allies], eax
	mov dword [esp+0xc], _cstring_shader_name_for_1
	mov dword [esp+0x8], 0x100
	mov dword [esp+0x4], _cstring_faction_128_arab
	mov dword [esp], _cstring_g_teamicon_axis
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_TeamIcon_Axis], eax
	mov dword [esp+0xc], _cstring_shader_name_for_2
	mov dword [esp+0x8], 0x100
	mov dword [esp+0x4], _cstring_null
	mov dword [esp], _cstring_g_teamicon_free
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_TeamIcon_Free], eax
	mov dword [esp+0xc], _cstring_shader_name_for_3
	mov dword [esp+0x8], 0x100
	mov dword [esp+0x4], _cstring_null
	mov dword [esp], _cstring_g_teamicon_spect
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_TeamIcon_Spectator], eax
	mov dword [esp+0x18], _cstring_player_team_colo
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov ebx, 0x3e800000
	mov [esp+0xc], ebx
	mov dword [esp+0x8], 0x3f3851ec
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_g_scorescolor_my
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_ScoresColor_MyTeam], eax
	mov dword [esp+0x18], _cstring_enemy_team_color
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov dword [esp+0xc], 0x3d4ccccd
	mov esi, 0x3d8f5c29
	mov [esp+0x8], esi
	mov edi, 0x3f30a3d7
	mov [esp+0x4], edi
	mov dword [esp], _cstring_g_scorescolor_en
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_ScoresColor_EnemyTeam], eax
	mov dword [esp+0x18], _cstring_spectator_team_c
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov [esp+0xc], ebx
	mov [esp+0x8], ebx
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_g_scorescolor_sp
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_ScoresColor_Spectator], eax
	mov dword [esp+0x18], _cstring_free_team_color_
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov dword [esp+0xc], 0x3dcccccd
	mov dword [esp+0x8], 0x3f47ae14
	mov dword [esp+0x4], 0x3f428f5c
	mov dword [esp], _cstring_g_scorescolor_fr
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_ScoresColor_Free], eax
	mov dword [esp+0x18], _cstring_allies_team_colo
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov [esp+0xc], esi
	mov dword [esp+0x8], 0x3eeb851f
	mov dword [esp+0x4], 0x3db851ec
	mov dword [esp], _cstring_g_scorescolor_al
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_ScoresColor_Allies], eax
	mov dword [esp+0x18], _cstring_axis_team_color_
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov dword [esp+0xc], 0x3d4ccccd
	mov [esp+0x8], esi
	mov [esp+0x4], edi
	mov dword [esp], _cstring_g_scorescolor_ax
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_ScoresColor_Axis], eax
	mov dword [esp+0xc], _cstring_allied_team_name
	mov dword [esp+0x8], 0x100
	mov dword [esp+0x4], _cstring_game_allies
	mov dword [esp], _cstring_g_teamname_allie
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_TeamName_Allies], eax
	mov dword [esp+0xc], _cstring_axis_team_name
	mov dword [esp+0x8], 0x100
	mov dword [esp+0x4], _cstring_game_axis
	mov dword [esp], _cstring_g_teamname_axis
	call _Z19Dvar_RegisterStringPKcS0_tS0_
	mov [g_TeamName_Axis], eax
	mov dword [esp+0x18], _cstring_allies_team_colo1
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov [esp+0xc], edi
	mov dword [esp+0x8], 0x3f23d70a
	mov esi, 0x3f19999a
	mov [esp+0x4], esi
	mov dword [esp], _cstring_g_teamcolor_alli
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_TeamColor_Allies], eax
	mov dword [esp+0x18], _cstring_axis_team_color
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov dword [esp+0xc], 0x3ed1eb85
	mov dword [esp+0x8], 0x3f11eb85
	mov dword [esp+0x4], 0x3f266666
	mov dword [esp], _cstring_g_teamcolor_axis
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_TeamColor_Axis], eax
	mov dword [esp+0x18], _cstring_player_team_colo1
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov dword [esp+0xc], 0x3f59999a
	mov [esp+0x8], esi
	mov dword [esp+0x4], 0x3ecccccd
	mov dword [esp], _cstring_g_teamcolor_myte
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_TeamColor_MyTeam], eax
	mov dword [esp+0x18], _cstring_enemy_team_color1
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov [esp+0xc], ebx
	mov [esp+0x8], ebx
	mov esi, 0x3f400000
	mov [esp+0x4], esi
	mov dword [esp], _cstring_g_teamcolor_enem
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_TeamColor_EnemyTeam], eax
	mov dword [esp+0x18], _cstring_spectator_team_c1
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov [esp+0xc], ebx
	mov [esp+0x8], ebx
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_g_teamcolor_spec
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_TeamColor_Spectator], eax
	mov dword [esp+0x18], _cstring_free_team_color
	mov dword [esp+0x14], 0x100
	mov dword [esp+0x10], 0x3f800000
	mov [esp+0xc], ebx
	mov [esp+0x8], ebx
	mov [esp+0x4], esi
	mov dword [esp], _cstring_g_teamcolor_free
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_TeamColor_Free], eax
	mov dword [esp+0xc], _cstring_enable_extrapola
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x1
	mov dword [esp], _cstring_g_smoothclients
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_smoothClients], eax
	mov dword [esp+0xc], _cstring_turn_on_antilag_
	mov dword [esp+0x8], 0x40
	mov dword [esp+0x4], 0x1
	mov dword [esp], _cstring_g_antilag
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_antilag], eax
	mov dword [esp+0xc], _cstring_use_old_voting_m
	mov dword [esp+0x8], 0x1
	mov dword [esp+0x4], 0x1
	mov dword [esp], _cstring_g_oldvoting
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_oldVoting], eax
	mov dword [esp+0x14], _cstring_how_much_an_abst
	mov dword [esp+0x10], 0x1
	mov dword [esp+0xc], 0x3f800000
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x3f000000
	mov dword [esp], _cstring_g_voteabstainwei
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_voteAbstainWeight], eax
	mov dword [esp+0xc], _cstring_turn_off_script_
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_no_script_spam
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_NoScriptSpam], eax
	mov dword [esp+0xc], _cstring_turn_on_debuggin
	mov dword [esp+0x8], 0x80
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_debuglocdamage
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_debugLocDamage], eax
	mov dword [esp+0x14], _cstring_maximum_range_fo
	mov dword [esp+0x10], 0x80
	mov ebx, 0x466a6000
	mov [esp+0xc], ebx
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x43800000
	mov dword [esp], _cstring_g_friendlyfiredi
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_friendlyfireDist], eax
	mov dword [esp+0x14], _cstring_maximum_range_fo1
	mov dword [esp+0x10], 0x80
	mov [esp+0xc], ebx
	mov dword [esp+0x8], 0x0
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_g_friendlynamedi
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_friendlyNameDist], eax
	mov dword [esp+0xc], _cstring_turn_on_debug_li
	mov dword [esp+0x8], 0x80
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_melee_debug
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [melee_debug], eax
	mov dword [esp+0xc], _cstring_turn_on_debug_li1
	mov dword [esp+0x8], 0x80
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_radius_damage_de
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [radius_damage_debug], eax
	mov dword [esp+0x14], _cstring_the_radius_to_a_
	mov dword [esp+0x10], 0x80
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x42b40000
	mov dword [esp], _cstring_player_throwback
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [player_throwbackInnerRadius], eax
	mov dword [esp+0x14], _cstring_the_radius_playe
	mov dword [esp+0x10], 0x80
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x43200000
	mov dword [esp], _cstring_player_throwback1
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [player_throwbackOuterRadius], eax
	mov dword [esp+0x14], _cstring_the_radius_withi
	mov dword [esp+0x10], 0x80
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x43000000
	mov dword [esp], _cstring_player_mguseradi
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [player_MGUseRadius], eax
	mov dword [esp+0x14], _cstring_minimum_speed_at
	mov dword [esp+0x10], 0x80
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x43c80000
	mov dword [esp], _cstring_g_mingrenadedama
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_minGrenadeDamageSpeed], eax
	mov dword [esp+0xc], _cstring_whether_enemies_
	mov dword [esp+0x8], 0x84
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_compassshowene
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_compassShowEnemies], eax
	mov dword [esp+0xc], _cstring_print_a_message_
	mov dword [esp+0x8], 0x80
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_pickupprints
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [pickupPrints], eax
	mov dword [esp+0x14], _cstring_animation_debugg
	mov dword [esp+0x10], 0x80
	mov dword [esp+0xc], 0x3ff
	mov dword [esp+0x8], 0xffffffff
	mov dword [esp+0x4], 0xffffffff
	mov dword [esp], _cstring_g_dumpanims
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_dumpAnims], eax
	mov dword [esp+0x14], _cstring_time_to_hold_the
	mov dword [esp+0x10], 0x0
	mov dword [esp+0xc], 0x7fffffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_useholdtime
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_useholdtime], eax
	mov dword [esp+0x14], _cstring_time_in_millisec
	mov dword [esp+0x10], 0x81
	mov dword [esp+0xc], 0x3e8
	mov dword [esp+0x8], 0x0
	mov eax, [_ZZ15G_RegisterDvarsvE28MY_DEFAULT_USEHOLDSPAWNDELAY]
	mov [esp+0x4], eax
	mov dword [esp], _cstring_g_useholdspawnde
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_useholdspawndelay], eax
	mov dword [esp+0xc], _cstring_whether_red_cros
	mov dword [esp+0x8], 0x21
	mov dword [esp+0x4], 0x1
	mov dword [esp], _cstring_g_redcrosshairs
	call _Z17Dvar_RegisterBoolPKchtS0_
	mov [g_redCrosshairs], eax
	mov dword [esp+0x14], _cstring_time_that_the_cl
	mov dword [esp+0x10], 0x80
	mov dword [esp+0xc], 0xea60
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x1f4
	mov dword [esp], _cstring_g_mantleblocktim
	call _Z16Dvar_RegisterIntPKciiitS0_
	mov [g_mantleBlockTimeBuffer], eax
	call _Z24Helicopter_RegisterDvarsv
	call _Z18G_VehRegisterDvarsv
	call _Z22G_RegisterMissileDvarsv
	call _Z27G_RegisterMissileDebugDvarsv
	call _Z16BG_RegisterDvarsv
	mov dword [esp+0x18], _cstring_fog_color_that_w
	mov dword [esp+0x14], 0x10c0
	mov dword [esp+0x10], 0x3f800000
	mov dword [esp+0xc], 0x0
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x3f800000
	mov dword [esp], _cstring_g_fogcolorreadon
	call _Z18Dvar_RegisterColorPKcfffftS0_
	mov [g_fogColorReadOnly], eax
	mov dword [esp+0x14], _cstring_fog_start_distan
	mov dword [esp+0x10], 0x10c0
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x0
	mov dword [esp], _cstring_g_fogstartdistre
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_fogStartDistReadOnly], eax
	mov dword [esp+0x14], _cstring_fog_start_distan
	mov dword [esp+0x10], 0x10c0
	mov dword [esp+0xc], 0x7f7fffff
	mov dword [esp+0x8], 0x0
	mov dword [esp+0x4], 0x3dcccccd
	mov dword [esp], _cstring_g_foghalfdistrea
	call _Z18Dvar_RegisterFloatPKcffftS0_
	mov [g_fogHalfDistReadOnly], eax
	add esp, 0x2c
	pop ebx
	pop esi
	pop edi
	pop ebp
	ret
	nop


;G_CreateDObj(DObjModel_s*, unsigned short, XAnimTree_s*, int, int, clientInfo_t*)
_Z12G_CreateDObjP11DObjModel_stP11XAnimTree_siiP12clientInfo_t:
	push ebp
	mov ebp, esp
	sub esp, 0x18
	movzx edx, word [ebp+0xc]
	mov eax, [ebp+0x14]
	mov [esp+0xc], eax
	mov eax, [ebp+0x10]
	mov [esp+0x8], eax
	mov [esp+0x4], edx
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z20Com_ServerDObjCreateP11DObjModel_stP11XAnimTree_si
	leave
	ret
	nop


;G_GetDObj(int, int)
_Z9G_GetDObjii:
	push ebp
	mov ebp, esp
	pop ebp
	jmp _Z17Com_GetServerDObji
	nop


;G_SafeDObjFree(int, int)
_Z14G_SafeDObjFreeii:
	push ebp
	mov ebp, esp
	pop ebp
	jmp _Z22Com_SafeServerDObjFreei
	nop


;SortRanks(void const*, void const*)
_Z9SortRanksPKvS0_:
	push ebp
	mov ebp, esp
	push esi
	push ebx
	mov ebx, [level]
	mov eax, [ebp+0x8]
	mov ecx, [eax]
	lea eax, [ecx+ecx*2]
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	add eax, ecx
	lea esi, [ebx+eax]
	mov eax, [ebp+0xc]
	mov ecx, [eax]
	lea eax, [ecx+ecx*2]
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	add eax, ecx
	lea edx, [ebx+eax]
	cmp dword [esi+0x2f8c], 0x1
	jnz _Z9SortRanksPKvS0__10
_Z9SortRanksPKvS0__50:
	mov eax, 0x1
_Z9SortRanksPKvS0__70:
	pop ebx
	pop esi
	pop ebp
	ret
_Z9SortRanksPKvS0__10:
	cmp dword [edx+0x2f8c], 0x1
	jz _Z9SortRanksPKvS0__20
	cmp dword [esi+0x3010], 0x3
	jz _Z9SortRanksPKvS0__30
	cmp dword [edx+0x3010], 0x3
	jnz _Z9SortRanksPKvS0__40
_Z9SortRanksPKvS0__20:
	mov eax, 0xffffffff
	pop ebx
	pop esi
	pop ebp
	ret
_Z9SortRanksPKvS0__40:
	mov eax, [edx+0x2f78]
	cmp [esi+0x2f78], eax
	jg _Z9SortRanksPKvS0__20
	jl _Z9SortRanksPKvS0__50
	mov eax, [edx+0x2f7c]
	cmp [esi+0x2f7c], eax
	jl _Z9SortRanksPKvS0__20
	jg _Z9SortRanksPKvS0__50
_Z9SortRanksPKvS0__60:
	xor eax, eax
	pop ebx
	pop esi
	pop ebp
	ret
_Z9SortRanksPKvS0__30:
	cmp dword [edx+0x3010], 0x3
	jnz _Z9SortRanksPKvS0__50
	cmp esi, edx
	jb _Z9SortRanksPKvS0__20
	jbe _Z9SortRanksPKvS0__60
	mov eax, 0x1
	jmp _Z9SortRanksPKvS0__70
	nop


;G_RunFrameForEntity(gentity_s*)
_Z19G_RunFrameForEntityP9gentity_s:
_Z19G_RunFrameForEntityP9gentity_s_30:
	push ebp
	mov ebp, esp
	push esi
	push ebx
	sub esp, 0x10
	mov ebx, eax
	mov eax, [level+0x1e8]
	cmp [ebx+0x194], eax
	jz _Z19G_RunFrameForEntityP9gentity_s_10
	mov [ebx+0x194], eax
	mov eax, [ebx+0x218]
	test eax, eax
	jz _Z19G_RunFrameForEntityP9gentity_s_20
	mov eax, [eax]
	call _Z19G_RunFrameForEntityP9gentity_s_30
_Z19G_RunFrameForEntityP9gentity_s_20:
	test byte [ebx+0xa], 0x1
	jz _Z19G_RunFrameForEntityP9gentity_s_40
	mov eax, [level+0x1ec]
	cmp eax, [ebx+0x70]
	jg _Z19G_RunFrameForEntityP9gentity_s_50
_Z19G_RunFrameForEntityP9gentity_s_140:
	sub eax, [ebx+0x184]
	cmp eax, 0x12c
	jle _Z19G_RunFrameForEntityP9gentity_s_60
	mov eax, [ebx+0x188]
	test eax, eax
	jnz _Z19G_RunFrameForEntityP9gentity_s_50
	mov eax, [ebx+0x18c]
	test eax, eax
	jnz _Z19G_RunFrameForEntityP9gentity_s_70
_Z19G_RunFrameForEntityP9gentity_s_60:
	mov esi, [ebx+0x188]
	test esi, esi
	jnz _Z19G_RunFrameForEntityP9gentity_s_10
	mov eax, [ebx+0x4]
	cmp eax, 0x4
	jz _Z19G_RunFrameForEntityP9gentity_s_80
	cmp eax, 0x3
	jz _Z19G_RunFrameForEntityP9gentity_s_90
	cmp eax, 0x2
	jz _Z19G_RunFrameForEntityP9gentity_s_100
	cmp byte [ebx+0x16a], 0x0
	jnz _Z19G_RunFrameForEntityP9gentity_s_110
	cmp eax, 0x6
	jz _Z19G_RunFrameForEntityP9gentity_s_120
	cmp eax, 0xd
	jz _Z19G_RunFrameForEntityP9gentity_s_120
	cmp eax, 0xa
	jz _Z19G_RunFrameForEntityP9gentity_s_120
	mov edx, [ebx+0x15c]
	test edx, edx
	jz _Z19G_RunFrameForEntityP9gentity_s_130
	mov [esp], ebx
	call _Z11G_RunClientP9gentity_s
_Z19G_RunFrameForEntityP9gentity_s_10:
	add esp, 0x10
	pop ebx
	pop esi
	pop ebp
	ret
_Z19G_RunFrameForEntityP9gentity_s_40:
	mov eax, [level+0x1ec]
	jmp _Z19G_RunFrameForEntityP9gentity_s_140
_Z19G_RunFrameForEntityP9gentity_s_50:
	mov [esp], ebx
	call _Z12G_FreeEntityP9gentity_s
	add esp, 0x10
	pop ebx
	pop esi
	pop ebp
	ret
_Z19G_RunFrameForEntityP9gentity_s_70:
	mov dword [ebx+0x18c], 0x0
	mov [esp], ebx
	call _Z15SV_UnlinkEntityP9gentity_s
	jmp _Z19G_RunFrameForEntityP9gentity_s_60
_Z19G_RunFrameForEntityP9gentity_s_110:
	mov [esp], ebx
	call _Z9G_RunItemP9gentity_s
	jmp _Z19G_RunFrameForEntityP9gentity_s_10
_Z19G_RunFrameForEntityP9gentity_s_90:
	mov ecx, [ebx+0x218]
	test ecx, ecx
	jz _Z19G_RunFrameForEntityP9gentity_s_110
	mov [esp], ebx
	call _Z13G_GeneralLinkP9gentity_s
	mov eax, [ebx+0x19c]
	test eax, eax
	jle _Z19G_RunFrameForEntityP9gentity_s_10
_Z19G_RunFrameForEntityP9gentity_s_170:
	cmp eax, [level+0x1ec]
	jg _Z19G_RunFrameForEntityP9gentity_s_10
	mov dword [ebx+0x19c], 0x0
	movzx eax, byte [ebx+0x16e]
	lea eax, [eax+eax*4]
	mov esi, [eax*8+entityHandlers]
	test esi, esi
	jz _Z19G_RunFrameForEntityP9gentity_s_150
	mov [esp], ebx
	call esi
	jmp _Z19G_RunFrameForEntityP9gentity_s_10
_Z19G_RunFrameForEntityP9gentity_s_120:
	mov [esp], ebx
	call _Z10G_RunMoverP9gentity_s
	jmp _Z19G_RunFrameForEntityP9gentity_s_10
_Z19G_RunFrameForEntityP9gentity_s_80:
	mov [esp], ebx
	call _Z12G_RunMissileP9gentity_s
	jmp _Z19G_RunFrameForEntityP9gentity_s_10
_Z19G_RunFrameForEntityP9gentity_s_130:
	test eax, eax
	jnz _Z19G_RunFrameForEntityP9gentity_s_160
	mov eax, [ebx+0x218]
	test eax, eax
	jz _Z19G_RunFrameForEntityP9gentity_s_160
	mov [esp], ebx
	call _Z13G_GeneralLinkP9gentity_s
_Z19G_RunFrameForEntityP9gentity_s_160:
	mov eax, [ebx+0x19c]
	test eax, eax
	jg _Z19G_RunFrameForEntityP9gentity_s_170
	jmp _Z19G_RunFrameForEntityP9gentity_s_10
_Z19G_RunFrameForEntityP9gentity_s_150:
	mov dword [esp+0x4], _cstring_null_entthink
	mov dword [esp], 0x2
	call _Z9Com_Error11errorParm_tPKcz
	mov [esp], ebx
	call esi
	jmp _Z19G_RunFrameForEntityP9gentity_s_10
_Z19G_RunFrameForEntityP9gentity_s_100:
	mov [esp], ebx
	call _Z11G_RunCorpseP9gentity_s
	jmp _Z19G_RunFrameForEntityP9gentity_s_10
	nop


;ShowEntityInfo()
_Z14ShowEntityInfov:
	push ebp
	mov ebp, esp
	push edi
	push esi
	push ebx
	sub esp, 0x5c
	mov eax, [g_entinfo]
	mov edx, [eax+0xc]
	test edx, edx
	jz _Z14ShowEntityInfov_10
	mov eax, [level+0xc]
	test eax, eax
	jle _Z14ShowEntityInfov_10
	mov esi, g_entities
	xor ebx, ebx
	mov edi, g_entities+0x4
_Z14ShowEntityInfov_40:
	mov eax, [edi]
	cmp eax, 0x10
	jg _Z14ShowEntityInfov_20
	cmp byte [edi+0xfc], 0x0
	jz _Z14ShowEntityInfov_20
	cmp byte [edi+0xf0], 0x0
	jz _Z14ShowEntityInfov_20
	cmp eax, 0x3
	jz _Z14ShowEntityInfov_30
	lea edx, [esi+0x13c]
	mov eax, [esi+0x13c]
	mov [ebp-0x24], eax
	mov eax, [edx+0x4]
	mov [ebp-0x20], eax
	mov eax, [edx+0x8]
	mov [ebp-0x1c], eax
	mov [esp], esi
	call _Z19G_GetEntityTypeNamePK9gentity_s
	mov [esp+0x8], eax
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_i_s
	call _Z2vaPKcz
	mov dword [esp+0x14], 0x1
	mov dword [esp+0x10], 0x1
	mov [esp+0xc], eax
	mov dword [esp+0x8], 0x3f000000
	mov eax, colorWhiteFaded
	mov [esp+0x4], eax
	lea edx, [ebp-0x24]
	mov [esp], edx
	call _Z17CL_AddDebugStringPKfS0_fPKcii
	movss xmm0, dword [ebp-0x1c]
	subss xmm0, [_float_10_00000000]
	movss [ebp-0x1c], xmm0
	mov eax, [edi+0x78]
	mov [esp+0x4], eax
	mov dword [esp], _cstring_ground_i
	call _Z2vaPKcz
	mov dword [esp+0x14], 0x1
	mov dword [esp+0x10], 0x1
	mov [esp+0xc], eax
	mov dword [esp+0x8], 0x3f000000
	mov ecx, colorWhiteFaded
	mov [esp+0x4], ecx
	lea eax, [ebp-0x24]
	mov [esp], eax
	call _Z17CL_AddDebugStringPKfS0_fPKcii
_Z14ShowEntityInfov_20:
	add ebx, 0x1
	add esi, 0x274
	add edi, 0x274
	cmp ebx, [level+0xc]
	jl _Z14ShowEntityInfov_40
_Z14ShowEntityInfov_10:
	add esp, 0x5c
	pop ebx
	pop esi
	pop edi
	pop ebp
	ret
_Z14ShowEntityInfov_30:
	lea edx, [esi+0x13c]
	mov eax, [esi+0x13c]
	mov [ebp-0x30], eax
	mov eax, [edx+0x4]
	mov [ebp-0x2c], eax
	movss xmm0, dword [_float_2_00000000]
	addss xmm0, [edx+0x8]
	movss [ebp-0x28], xmm0
	mov [ebp-0x3c], esi
	mov dword [ebp-0x40], 0x2
	mov edx, esi
	mov eax, [edx+0x1bc]
	test eax, eax
	jnz _Z14ShowEntityInfov_50
_Z14ShowEntityInfov_60:
	add dword [ebp-0x3c], 0xc
	sub dword [ebp-0x40], 0x1
	jz _Z14ShowEntityInfov_20
	mov edx, [ebp-0x3c]
	mov eax, [edx+0x1bc]
	test eax, eax
	jz _Z14ShowEntityInfov_60
_Z14ShowEntityInfov_50:
	mov [esp], eax
	call _Z15BG_GetWeaponDefj
	mov ecx, [ebp-0x3c]
	mov edx, [ecx+0x1b4]
	mov [esp+0xc], edx
	mov edx, [ecx+0x1b8]
	mov [esp+0x8], edx
	mov eax, [eax]
	mov [esp+0x4], eax
	mov dword [esp], _cstring_s_i__i
	call _Z2vaPKcz
	mov dword [esp+0x14], 0x1
	mov dword [esp+0x10], 0x1
	mov [esp+0xc], eax
	mov dword [esp+0x8], 0x3e99999a
	mov eax, colorRedFaded
	mov [esp+0x4], eax
	lea eax, [ebp-0x30]
	mov [esp], eax
	call _Z17CL_AddDebugStringPKfS0_fPKcii
	movss xmm0, dword [ebp-0x28]
	subss xmm0, [_float_4_00000000]
	movss [ebp-0x28], xmm0
	jmp _Z14ShowEntityInfov_60


;G_InitGame(int, int, int, int)
_Z10G_InitGameiiii:
	push ebp
	mov ebp, esp
	push edi
	push esi
	push ebx
	sub esp, 0x82c
	mov ebx, [ebp+0x8]
	mov esi, [ebp+0xc]
	mov dword [esp+0x4], _cstring__game_initializa
	mov dword [esp], 0xf
	call _Z10Com_PrintfiPKcz
	mov dword [esp+0x8], _cstring_call_of_duty_4
	mov dword [esp+0x4], _cstring_gamename_s
	mov dword [esp], 0xf
	call _Z10Com_PrintfiPKcz
	mov dword [esp+0x8], _cstring_feb_12_2009
	mov dword [esp+0x4], _cstring_gamedate_s
	mov dword [esp], 0xf
	call _Z10Com_PrintfiPKcz
	call _Z9Swap_Initv
	call _ZN9EntHandle4InitEv
	mov dword [esp+0x8], 0x2e6c
	mov dword [esp+0x4], 0x0
	mov dword [esp], level
	call memset
	mov dword [level+0x1c], 0x1
	mov [level+0x1ec], ebx
	mov [level+0x1f8], ebx
	mov dword [level+0x2df0], 0xffffffff
	mov dword [level+0x2e4c], 0x18
	mov [esp], esi
	call _Z8ms_srandj
	mov [esp], esi
	call _Z9Rand_Initi
	call _Z15GScr_LoadConstsv
	call _Z16G_SetupWeaponDefv
	mov eax, [ebp+0x10]
	test eax, eax
	jz _Z10G_InitGameiiii_10
	mov eax, [ebp+0x14]
	test eax, eax
	jz _Z10G_InitGameiiii_10
_Z10G_InitGameiiii_110:
	mov dword [esp], _cstring_sv_cheats
	call _Z12Dvar_GetBoolPKc
	test al, al
	jnz _Z10G_InitGameiiii_20
	mov eax, [ebp+0x10]
	test eax, eax
	jz _Z10G_InitGameiiii_30
_Z10G_InitGameiiii_20:
	call _Z15G_ProcessIPBansv
	mov eax, _Z12SV_XModelGetPKc
	mov [level_bgs+0x999ec], eax
	mov dword [level_bgs+0x999f0], 0x126fb6
	mov dword [level_bgs+0x999f4], 0x0
	mov dword [level_bgs+0x999f8], 0x126fe0
	mov dword [level_bgs+0x999fc], 0x126fea
	mov dword [level_bgs+0x99a00], 0x126ff4
	mov dword [level_bgs+0x999e8], 0x1
	mov eax, [g_log]
	mov edx, [eax+0xc]
	cmp byte [edx], 0x0
	jz _Z10G_InitGameiiii_40
	mov eax, [g_logSync]
	cmp byte [eax+0xc], 0x0
	jz _Z10G_InitGameiiii_50
	mov dword [esp+0x8], 0x3
	mov dword [esp+0x4], level+0x18
	mov [esp], edx
	call _Z18FS_FOpenFileByModePKcPi8fsMode_t
	mov eax, [level+0x18]
	test eax, eax
	jnz _Z10G_InitGameiiii_60
_Z10G_InitGameiiii_120:
	mov eax, [g_log]
	mov eax, [eax+0xc]
	mov [esp+0x8], eax
	mov dword [esp+0x4], _cstring_warning_couldnt_
	mov dword [esp], 0xf
	call _Z16Com_PrintWarningiPKcz
_Z10G_InitGameiiii_130:
	mov dword [level+0x2df4], 0x0
	mov dword [level+0x2df8], 0x0
	mov dword [level+0x2dfc], 0x0
	mov dword [level+0x2e00], 0x0
	mov dword [level+0x2e04], 0x0
	mov dword [level+0x2e08], 0x0
	mov dword [level+0x2e0c], 0x0
	mov dword [esp], _Z21Hunk_AllocXAnimServeri
	call _Z18Mantle_CreateAnimsPFPviE
	mov ebx, bgs
	mov dword [ebx], level_bgs
	mov eax, [ebp+0x10]
	test eax, eax
	jz _Z10G_InitGameiiii_70
_Z10G_InitGameiiii_160:
	mov dword [esp+0x8], 0x400
	lea ebx, [ebp-0x418]
	mov [esp+0x4], ebx
	mov dword [esp], 0x13
	call _Z18SV_GetConfigstringiPci
	mov dword [esp+0x8], _cstring_0
	mov dword [esp+0x4], _cstring_winner
	mov [esp], ebx
	call _Z19Info_SetValueForKeyPcPKcS1_
	mov [esp+0x4], ebx
	mov dword [esp], 0x13
	call _Z18SV_SetConfigstringiPKc
	mov dword [esp+0x8], 0x9d000
	mov dword [esp+0x4], 0x0
	mov dword [esp], g_entities
	call memset
	mov dword [level+0x4], g_entities
	mov eax, [g_maxclients]
	mov eax, [eax+0xc]
	mov [level+0x1e4], eax
	mov dword [esp+0x8], 0xc6100
	mov dword [esp+0x4], 0x0
	mov dword [esp], g_clients
	call memset
	mov dword [level], g_clients
	mov ebx, [level+0x1e4]
	test ebx, ebx
	jle _Z10G_InitGameiiii_80
	xor ecx, ecx
	mov edx, g_entities
	mov eax, g_clients
_Z10G_InitGameiiii_90:
	mov [edx+0x15c], eax
	add ecx, 0x1
	add edx, 0x274
	add eax, 0x3184
	cmp ecx, ebx
	jnz _Z10G_InitGameiiii_90
_Z10G_InitGameiiii_80:
	mov dword [level+0xc], 0x48
	mov dword [level+0x10], 0x0
	mov dword [level+0x14], 0x0
	mov dword [esp+0x10], 0x3184
	mov eax, [level]
	mov [esp+0xc], eax
	mov dword [esp+0x8], 0x274
	mov dword [esp+0x4], 0x48
	mov eax, [level+0x4]
	mov [esp], eax
	call _Z17SV_LocateGameDataP9gentity_siiP13playerState_si
	call _Z21G_ParseHitLocDmgTablev
	call _Z28BG_LoadPenetrationDepthTablev
	mov eax, [ebp+0x10]
	mov [esp], eax
	call _Z14G_VehiclesIniti
	call _Z13G_InitTurretsv
	call _Z25G_SpawnEntitiesFromStringv
	call _Z26G_VehiclesSetupSpawnedEntsv
	mov dword [esp], _cstring_0
	call _Z8G_setfogPKc
	call _Z16G_InitObjectivesv
	call _Z22Missile_InitAttractorsv
	call _Z18Scr_FreeEntityListv
	mov dword [esp+0x4], _cstring_
	mov dword [esp], 0xf
	call _Z10Com_PrintfiPKcz
	mov dword [esp], 0x1
	call _Z14Scr_InitSystemi
	mov dword [esp], 0x1
	call _Z14Scr_SetLoadingi
	call _Z21Scr_AllocGameVariablev
	call _Z13G_LoadStructsv
	call _Z16Scr_LoadGameTypev
	call _Z13Scr_LoadLevelv
	call _Z19Scr_StartupGameTypev
	mov eax, g_scr_data
	lea edx, [eax+0x26e0]
_Z10G_InitGameiiii_100:
	mov dword [eax+0x10c0], 0xffffffff
	add eax, 0x4dc
	cmp edx, eax
	jnz _Z10G_InitGameiiii_100
	mov eax, bgs
	mov dword [eax], 0x0
	mov dword [level+0x1c], 0x0
	call _Z21SaveRegisteredWeaponsv
	call _Z19SaveRegisteredItemsv
	add esp, 0x82c
	pop ebx
	pop esi
	pop edi
	pop ebp
	ret
_Z10G_InitGameiiii_10:
	call _Z15G_RegisterDvarsv
	jmp _Z10G_InitGameiiii_110
_Z10G_InitGameiiii_50:
	mov dword [esp+0x8], 0x2
	mov dword [esp+0x4], level+0x18
	mov [esp], edx
	call _Z18FS_FOpenFileByModePKcPi8fsMode_t
	mov eax, [level+0x18]
	test eax, eax
	jz _Z10G_InitGameiiii_120
_Z10G_InitGameiiii_60:
	mov dword [esp+0x4], 0x400
	lea ebx, [ebp-0x818]
	mov [esp], ebx
	call _Z16SV_GetServerinfoPci
	mov dword [esp], _cstring_1
	call _Z11G_LogPrintfPKcz
	mov [esp+0x4], ebx
	mov dword [esp], _cstring_initgame_s
	call _Z11G_LogPrintfPKcz
	jmp _Z10G_InitGameiiii_130
_Z10G_InitGameiiii_40:
	mov dword [esp+0x4], _cstring_not_logging_to_d
	mov dword [esp], 0xf
	call _Z10Com_PrintfiPKcz
	jmp _Z10G_InitGameiiii_130
_Z10G_InitGameiiii_70:
	mov dword [esp+0x8], 0x999cc
	mov dword [esp+0x4], 0x0
	mov dword [esp], level_bgs
	call memset
	mov edx, [ebx]
	mov eax, _Z18Com_FindSoundAliasPKc
	mov [edx+0x999c4], eax
	mov edx, [ebx]
	mov eax, _Z17G_AnimScriptSoundiP16snd_alias_list_t
	mov [edx+0x999c8], eax
	call _Z16GScr_LoadScriptsv
	call _Z11BG_LoadAnimv
	mov edi, [level_bgs+0x999cc]
	mov ebx, level_bgs
	mov esi, level_bgs+0x13300
_Z10G_InitGameiiii_140:
	mov dword [esp+0x4], _Z21Hunk_AllocXAnimServeri
	mov [esp], edi
	call _Z15XAnimCreateTreeP7XAnim_sPFPviE
	mov [ebx+0x99eac], eax
	add ebx, 0x4cc
	cmp esi, ebx
	jnz _Z10G_InitGameiiii_140
	mov ebx, g_scr_data
	lea esi, [ebx+0x26e0]
_Z10G_InitGameiiii_150:
	mov dword [esp+0x4], _Z21Hunk_AllocXAnimServeri
	mov [esp], edi
	call _Z15XAnimCreateTreeP7XAnim_sPFPviE
	mov [ebx+0x10bc], eax
	add ebx, 0x4dc
	cmp ebx, esi
	jnz _Z10G_InitGameiiii_150
	jmp _Z10G_InitGameiiii_160
_Z10G_InitGameiiii_30:
	call _Z18Dvar_SetCheatStatev
	jmp _Z10G_InitGameiiii_20
	nop


;G_RunFrame(int)
_Z10G_RunFramei:
	push ebp
	mov ebp, esp
	push edi
	push esi
	push ebx
	sub esp, 0x44c
	mov eax, [ebp+0x8]
	add dword [level+0x1e8], 0x1
	mov edx, [level+0x1ec]
	mov [level+0x1f0], edx
	mov [level+0x1ec], eax
	mov ecx, eax
	sub ecx, edx
	mov [level+0x1f4], ecx
	mov [level_bgs+0x999dc], eax
	mov [level_bgs+0x999e0], eax
	mov [level_bgs+0x999e4], ecx
	mov eax, bgs
	mov dword [eax], level_bgs
	mov eax, [level+0x1e4]
	test eax, eax
	jle _Z10G_RunFramei_10
	mov edi, g_entities
	xor esi, esi
	mov ebx, g_entities+0x100
	jmp _Z10G_RunFramei_20
_Z10G_RunFramei_30:
	add esi, 0x1
	add edi, 0x274
	add ebx, 0x274
	cmp esi, [level+0x1e4]
	jge _Z10G_RunFramei_10
_Z10G_RunFramei_20:
	cmp byte [ebx], 0x0
	jz _Z10G_RunFramei_30
	mov eax, [ebx+0x5c]
	mov eax, [eax+0x3078]
	test eax, eax
	jnz _Z10G_RunFramei_30
	mov [esp], edi
	call _Z15G_TouchTriggersP9gentity_s
	add esi, 0x1
	add edi, 0x274
	add ebx, 0x274
	cmp esi, [level+0x1e4]
	jl _Z10G_RunFramei_20
_Z10G_RunFramei_10:
	mov esi, [level+0xc]
	test esi, esi
	jle _Z10G_RunFramei_40
	mov esi, g_entities
	xor ebx, ebx
	jmp _Z10G_RunFramei_50
_Z10G_RunFramei_60:
	add ebx, 0x1
	add esi, 0x274
	cmp ebx, [level+0xc]
	jge _Z10G_RunFramei_40
_Z10G_RunFramei_50:
	cmp byte [esi+0x100], 0x0
	jz _Z10G_RunFramei_60
	cvtsi2ss xmm0, dword [level+0x1f4]
	mulss xmm0, [_float_0_00100000]
	movss [esp+0x4], xmm0
	mov [esp], esi
	call _Z21SV_DObjInitServerTimeP9gentity_sf
	add ebx, 0x1
	add esi, 0x274
	cmp ebx, [level+0xc]
	jl _Z10G_RunFramei_50
_Z10G_RunFramei_40:
	lea eax, [ebp-0x418]
	mov dword [esp+0x8], 0x400
	mov dword [esp+0x4], 0x0
	mov [esp], eax
	call memset
	mov eax, [level+0x2dd4]
	lea eax, [eax+eax*2]
	shl eax, 0x2
	mov [esp+0x8], eax
	mov dword [esp+0x4], level+0x15d4
	mov dword [esp], level+0x21d4
	call Com_Memcpy
	mov eax, [level+0x2dd4]
	mov [level+0x2dd8], eax
	mov dword [level+0x2dd4], 0x0
	mov byte [ebp-0x441], 0x0
_Z10G_RunFramei_120:
	add byte [ebp-0x441], 0x1
	mov ebx, [level+0x2dd8]
	test ebx, ebx
	jle _Z10G_RunFramei_70
	mov dword [ebp-0x420], 0x0
	mov dword [ebp-0x448], 0x0
	mov edi, level+0x21d0
	jmp _Z10G_RunFramei_80
_Z10G_RunFramei_100:
	mov eax, [level+0x2dd8]
	sub eax, 0x1
	mov [level+0x2dd8], eax
	sub dword [ebp-0x420], 0x1
	sub edi, 0xc
	lea eax, [eax+eax*2]
	shl eax, 0x2
	mov edx, [eax+level+0x21d4]
	mov [esi], edx
	mov edx, [eax+level+0x21d8]
	mov [esi+0x4], edx
	mov eax, [eax+level+0x21dc]
	mov [esi+0x8], eax
	add dword [ebp-0x420], 0x1
	add edi, 0xc
	mov ecx, [ebp-0x420]
	cmp ecx, [level+0x2dd8]
	jge _Z10G_RunFramei_90
_Z10G_RunFramei_80:
	lea esi, [edi+0x4]
	movzx ebx, word [edi+0x4]
	lea eax, [ebx+ebx*8]
	lea eax, [ebx+eax*2]
	mov edx, eax
	shl edx, 0x5
	add eax, edx
	lea eax, [eax+ebx+g_entities]
	mov [ebp-0x424], eax
	mov eax, [eax+0x26c]
	cmp eax, [edi+0x8]
	jnz _Z10G_RunFramei_100
	movzx edx, word [esi+0x2]
	lea eax, [edx+edx*8]
	lea eax, [edx+eax*2]
	mov ecx, eax
	shl ecx, 0x5
	add eax, ecx
	lea edx, [eax+edx+g_entities]
	mov eax, [edx+0x26c]
	cmp eax, [esi+0x8]
	jnz _Z10G_RunFramei_100
	movzx ecx, byte [ebp-0x441]
	cmp cl, [ebp+ebx-0x418]
	jnz _Z10G_RunFramei_110
	mov dword [ebp-0x448], 0x1
	add dword [ebp-0x420], 0x1
	add edi, 0xc
	mov ecx, [ebp-0x420]
	cmp ecx, [level+0x2dd8]
	jl _Z10G_RunFramei_80
_Z10G_RunFramei_90:
	call _Z21Scr_RunCurrentThreadsv
	mov ecx, [ebp-0x448]
	test ecx, ecx
	jnz _Z10G_RunFramei_120
_Z10G_RunFramei_480:
	mov ebx, [level+0x1e4]
	test ebx, ebx
	jle _Z10G_RunFramei_130
	mov dword [ebp-0x428], g_entities
	mov dword [ebp-0x41c], 0x0
	mov dword [ebp-0x42c], g_entities+0x100
_Z10G_RunFramei_230:
	mov eax, [ebp-0x42c]
	cmp byte [eax], 0x0
	jz _Z10G_RunFramei_140
	mov edx, [eax+0x5c]
	mov [ebp-0x440], edx
	mov eax, [edx+0xe8]
	cmp eax, [edx+0x3170]
	jz _Z10G_RunFramei_150
	mov [esp], eax
	call _Z15BG_GetWeaponDefj
	mov eax, [eax]
	mov [esp], eax
	call _Z13Scr_AddStringPKc
	mov dword [esp+0x8], 0x1
	mov eax, scr_const
	movzx eax, word [eax+0xc8]
	mov [esp+0x4], eax
	mov ecx, [ebp-0x428]
	mov [esp], ecx
	call _Z10Scr_NotifyP9gentity_stj
	mov edx, [ebp-0x440]
	mov eax, [edx+0xe8]
	mov [edx+0x3170], eax
	mov edx, [ebp-0x440]
_Z10G_RunFramei_150:
	mov ecx, scr_const
	movzx esi, word [ecx+0x2c]
	movzx eax, word [ecx+0x12]
	movzx ecx, byte [edx+0x3174]
	cmp dword [edx+0xec], 0x5
	jz _Z10G_RunFramei_160
_Z10G_RunFramei_460:
	xor edx, edx
_Z10G_RunFramei_470:
	mov ebx, edx
	mov edx, eax
	cmp bl, cl
	jz _Z10G_RunFramei_170
	test bl, bl
	jz _Z10G_RunFramei_180
	mov dword [esp+0x8], 0x0
	movzx eax, dx
	mov [esp+0x4], eax
	mov ecx, [ebp-0x428]
	mov [esp], ecx
	call _Z10Scr_NotifyP9gentity_stj
_Z10G_RunFramei_170:
	movzx eax, bl
	mov edx, [ebp-0x440]
	mov [edx+0x3174], al
	mov eax, [edx+0x10]
	shr eax, 0x6
	mov ebx, eax
	and bl, 0x1
	mov ecx, scr_const
	movzx edx, word [ecx+0xd4]
	movzx eax, word [ecx+0xd6]
	mov ecx, [ebp-0x440]
	cmp [ecx+0x3175], bl
	jz _Z10G_RunFramei_190
	test bl, bl
	jz _Z10G_RunFramei_200
	mov dword [esp+0x8], 0x0
	movzx eax, dx
	mov [esp+0x4], eax
	mov eax, [ebp-0x428]
	mov [esp], eax
	call _Z10Scr_NotifyP9gentity_stj
_Z10G_RunFramei_190:
	movzx eax, bl
	mov ecx, [ebp-0x440]
	mov [ecx+0x3175], al
	mov eax, scr_const
	movzx edi, word [eax+0x146]
	movzx ebx, word [eax+0x144]
	movzx esi, byte [ecx+0x3176]
	mov [esp], ecx
	call _Z14PM_IsSprintingPK13playerState_s
	mov [ebp-0x439], al
	mov ecx, esi
	cmp [ebp-0x439], cl
	jz _Z10G_RunFramei_210
	cmp byte [ebp-0x439], 0x0
	jz _Z10G_RunFramei_220
	mov dword [esp+0x8], 0x0
	movzx eax, bx
	mov [esp+0x4], eax
	mov eax, [ebp-0x428]
	mov [esp], eax
	call _Z10Scr_NotifyP9gentity_stj
_Z10G_RunFramei_210:
	movzx eax, byte [ebp-0x439]
	mov ecx, [ebp-0x440]
	mov [ecx+0x3176], al
_Z10G_RunFramei_140:
	add dword [ebp-0x41c], 0x1
	add dword [ebp-0x428], 0x274
	add dword [ebp-0x42c], 0x274
	mov eax, [ebp-0x41c]
	cmp eax, [level+0x1e4]
	jl _Z10G_RunFramei_230
_Z10G_RunFramei_130:
	mov edx, [level+0xc]
	test edx, edx
	jg _Z10G_RunFramei_240
_Z10G_RunFramei_530:
	call _Z11Scr_IncTimev
	call _Z21SV_ResetSkeletonCachev
	mov dword [level+0x2df0], 0x0
	mov eax, [level+0xc]
	test eax, eax
	jg _Z10G_RunFramei_250
_Z10G_RunFramei_500:
	mov dword [level+0x2df0], 0xffffffff
	mov eax, [level+0x1e4]
	test eax, eax
	jle _Z10G_RunFramei_260
	mov dword [ebp-0x438], 0x0
	mov dword [ebp-0x434], 0x0
_Z10G_RunFramei_320:
	mov eax, [ebp-0x434]
	add eax, [level+0x4]
	cmp byte [eax+0x100], 0x0
	jz _Z10G_RunFramei_270
	mov eax, [eax+0x15c]
	mov edi, [eax+0x3010]
	mov ecx, eax
	mov ebx, level+0x24
	mov esi, level+0x1e4
	jmp _Z10G_RunFramei_280
_Z10G_RunFramei_310:
	cmp edi, eax
	jz _Z10G_RunFramei_290
_Z10G_RunFramei_300:
	mov dword [ecx+0x65c], 0x0
	add ebx, 0x1c
	add ecx, 0x1c
	cmp esi, ebx
	jz _Z10G_RunFramei_270
_Z10G_RunFramei_280:
	mov eax, [ebx]
	test eax, eax
	jz _Z10G_RunFramei_300
	mov eax, [ebx+0x14]
	test eax, eax
	jnz _Z10G_RunFramei_310
_Z10G_RunFramei_290:
	mov edx, ebx
	sub edx, level+0x24
	mov eax, [edx+level+0x24]
	mov [ecx+0x65c], eax
	mov eax, [edx+level+0x28]
	mov [ecx+0x660], eax
	mov eax, [edx+level+0x2c]
	mov [ecx+0x664], eax
	mov eax, [edx+level+0x30]
	mov [ecx+0x668], eax
	mov eax, [edx+level+0x34]
	mov [ecx+0x66c], eax
	mov eax, [edx+level+0x38]
	mov [ecx+0x670], eax
	mov eax, [edx+level+0x3c]
	mov [ecx+0x674], eax
	add ebx, 0x1c
	add ecx, 0x1c
	cmp esi, ebx
	jnz _Z10G_RunFramei_280
_Z10G_RunFramei_270:
	add dword [ebp-0x438], 0x1
	add dword [ebp-0x434], 0x274
	mov eax, [ebp-0x438]
	cmp eax, [level+0x1e4]
	jl _Z10G_RunFramei_320
_Z10G_RunFramei_260:
	mov eax, [level+0x1e4]
	test eax, eax
	jle _Z10G_RunFramei_330
	xor esi, esi
	xor ebx, ebx
	jmp _Z10G_RunFramei_340
_Z10G_RunFramei_350:
	add esi, 0x1
	add ebx, 0x274
	cmp esi, [level+0x1e4]
	jge _Z10G_RunFramei_330
_Z10G_RunFramei_340:
	mov edx, ebx
	add edx, [level+0x4]
	cmp byte [edx+0x100], 0x0
	jz _Z10G_RunFramei_350
	mov dword [esp+0x8], 0x3
	mov eax, [edx]
	mov [esp+0x4], eax
	mov eax, [edx+0x15c]
	mov [esp], eax
	call _Z20HudElem_UpdateClientP9gclient_si16hudelem_update_t
	add esi, 0x1
	add ebx, 0x274
	cmp esi, [level+0x1e4]
	jl _Z10G_RunFramei_340
_Z10G_RunFramei_330:
	mov eax, [level+0x1e4]
	test eax, eax
	jle _Z10G_RunFramei_360
	mov esi, g_entities
	xor ebx, ebx
	jmp _Z10G_RunFramei_370
_Z10G_RunFramei_380:
	add ebx, 0x1
	add esi, 0x274
	cmp ebx, [level+0x1e4]
	jge _Z10G_RunFramei_360
_Z10G_RunFramei_370:
	cmp byte [esi+0x100], 0x0
	jz _Z10G_RunFramei_380
	mov [esp], esi
	call _Z14ClientEndFrameP9gentity_s
	add ebx, 0x1
	add esi, 0x274
	cmp ebx, [level+0x1e4]
	jl _Z10G_RunFramei_370
_Z10G_RunFramei_360:
	call _Z15CheckTeamStatusv
	mov eax, [g_oldVoting]
	cmp byte [eax+0xc], 0x0
	jnz _Z10G_RunFramei_390
_Z10G_RunFramei_600:
	mov eax, [level+0x210]
	test eax, eax
	jz _Z10G_RunFramei_400
	mov ecx, [level+0x1e4]
	test ecx, ecx
	jg _Z10G_RunFramei_410
_Z10G_RunFramei_570:
	mov dword [level+0x210], 0x0
_Z10G_RunFramei_400:
	mov eax, [g_listEntity]
	cmp byte [eax+0xc], 0x0
	jnz _Z10G_RunFramei_420
_Z10G_RunFramei_630:
	mov edi, [level+0x2de8]
	test edi, edi
	jnz _Z10G_RunFramei_430
_Z10G_RunFramei_610:
	mov esi, [level+0x2dec]
	test esi, esi
	jnz _Z10G_RunFramei_440
_Z10G_RunFramei_590:
	mov eax, [g_dumpAnims]
	mov ecx, [eax+0xc]
	test ecx, ecx
	js _Z10G_RunFramei_450
	mov dword [esp+0x4], _cstring_server
	lea eax, [ecx+ecx*8]
	lea eax, [ecx+eax*2]
	mov edx, eax
	shl edx, 0x5
	add eax, edx
	add eax, ecx
	add eax, [level+0x4]
	mov [esp], eax
	call _Z18SV_DObjDisplayAnimP9gentity_sPKc
_Z10G_RunFramei_450:
	mov eax, bgs
	mov dword [eax], 0x0
	call _Z14ShowEntityInfov
	add esp, 0x44c
	pop ebx
	pop esi
	pop edi
	pop ebp
	ret
_Z10G_RunFramei_160:
	cmp dword [edx+0x4], 0x6
	jg _Z10G_RunFramei_460
	mov edx, 0x1
	jmp _Z10G_RunFramei_470
_Z10G_RunFramei_70:
	mov dword [ebp-0x448], 0x0
	call _Z21Scr_RunCurrentThreadsv
	mov ecx, [ebp-0x448]
	test ecx, ecx
	jnz _Z10G_RunFramei_120
	jmp _Z10G_RunFramei_480
_Z10G_RunFramei_110:
	mov [ebp+ebx-0x418], cl
	mov [esp], edx
	call _Z13Scr_AddEntityP9gentity_s
	mov dword [esp+0x8], 0x1
	mov eax, scr_const
	movzx eax, word [eax+0xbc]
	mov [esp+0x4], eax
	mov edx, [ebp-0x424]
	mov [esp], edx
	call _Z10Scr_NotifyP9gentity_stj
	jmp _Z10G_RunFramei_100
_Z10G_RunFramei_180:
	mov dword [esp+0x8], 0x0
	movzx eax, si
	mov [esp+0x4], eax
	mov eax, [ebp-0x428]
	mov [esp], eax
	call _Z10Scr_NotifyP9gentity_stj
	jmp _Z10G_RunFramei_170
_Z10G_RunFramei_200:
	mov dword [esp+0x8], 0x0
	movzx eax, ax
	mov [esp+0x4], eax
	mov edx, [ebp-0x428]
	mov [esp], edx
	call _Z10Scr_NotifyP9gentity_stj
	jmp _Z10G_RunFramei_190
_Z10G_RunFramei_220:
	mov dword [esp+0x8], 0x0
	movzx eax, di
	mov [esp+0x4], eax
	mov edx, [ebp-0x428]
	mov [esp], edx
	call _Z10Scr_NotifyP9gentity_stj
	jmp _Z10G_RunFramei_210
_Z10G_RunFramei_250:
	mov ebx, g_entities
	jmp _Z10G_RunFramei_490
_Z10G_RunFramei_510:
	mov eax, [level+0x2df0]
	add eax, 0x1
	mov [level+0x2df0], eax
	add ebx, 0x274
	cmp eax, [level+0xc]
	jge _Z10G_RunFramei_500
_Z10G_RunFramei_490:
	cmp byte [ebx+0x100], 0x0
	jz _Z10G_RunFramei_510
	mov eax, ebx
	call _Z19G_RunFrameForEntityP9gentity_s
	jmp _Z10G_RunFramei_510
_Z10G_RunFramei_240:
	mov edi, g_entities
	xor esi, esi
	mov ebx, g_entities+0x100
	jmp _Z10G_RunFramei_520
_Z10G_RunFramei_540:
	add esi, 0x1
	add edi, 0x274
	add ebx, 0x274
	cmp esi, [level+0xc]
	jge _Z10G_RunFramei_530
_Z10G_RunFramei_520:
	cmp byte [ebx], 0x0
	jz _Z10G_RunFramei_540
	lea ecx, [ebx+0x80]
	mov [ebp-0x430], ecx
	test byte [ebx+0x81], 0x20
	jnz _Z10G_RunFramei_540
_Z10G_RunFramei_550:
	mov dword [esp+0x4], 0x1
	mov [esp], edi
	call _Z22G_DObjUpdateServerTimeP9gentity_si
	test eax, eax
	jz _Z10G_RunFramei_540
	call _Z21Scr_RunCurrentThreadsv
	cmp byte [ebx], 0x0
	jz _Z10G_RunFramei_540
	mov edx, [ebp-0x430]
	test byte [edx+0x1], 0x20
	jz _Z10G_RunFramei_550
	jmp _Z10G_RunFramei_540
_Z10G_RunFramei_410:
	xor esi, esi
	xor ebx, ebx
	mov edi, g_entities
	jmp _Z10G_RunFramei_560
_Z10G_RunFramei_580:
	add esi, 0x1
	add ebx, 0x3184
	add edi, 0x274
	cmp esi, [level+0x1e4]
	jge _Z10G_RunFramei_570
_Z10G_RunFramei_560:
	mov eax, ebx
	add eax, [level]
	cmp dword [eax+0x2f8c], 0x2
	jnz _Z10G_RunFramei_580
	cmp dword [eax+0x4], 0x5
	jnz _Z10G_RunFramei_580
	mov [esp], edi
	call _Z14SendScoreboardP9gentity_s
	jmp _Z10G_RunFramei_580
_Z10G_RunFramei_440:
	call _Z19SaveRegisteredItemsv
	jmp _Z10G_RunFramei_590
_Z10G_RunFramei_390:
	call _Z9CheckVotev
	jmp _Z10G_RunFramei_600
_Z10G_RunFramei_430:
	call _Z21SaveRegisteredWeaponsv
	jmp _Z10G_RunFramei_610
_Z10G_RunFramei_420:
	xor ebx, ebx
	mov esi, g_entities
_Z10G_RunFramei_620:
	movzx eax, word [esi+0x170]
	mov [esp], eax
	call _Z18SL_ConvertToStringj
	mov [esp+0xc], eax
	mov [esp+0x8], ebx
	mov dword [esp+0x4], _cstring_4i_s
	mov dword [esp], 0xf
	call _Z10Com_PrintfiPKcz
	add ebx, 0x1
	add esi, 0x274
	cmp ebx, 0x400
	jnz _Z10G_RunFramei_620
	mov dword [esp+0x4], 0x0
	mov eax, [g_listEntity]
	mov [esp], eax
	call _Z12Dvar_SetBoolPK6dvar_sh
	jmp _Z10G_RunFramei_630


;G_RunThink(gentity_s*)
_Z10G_RunThinkP9gentity_s:
	push ebp
	mov ebp, esp
	push esi
	push ebx
	sub esp, 0x10
	mov ebx, [ebp+0x8]
	mov eax, [ebx+0x19c]
	test eax, eax
	jle _Z10G_RunThinkP9gentity_s_10
	cmp eax, [level+0x1ec]
	jg _Z10G_RunThinkP9gentity_s_10
	mov dword [ebx+0x19c], 0x0
	movzx eax, byte [ebx+0x16e]
	lea eax, [eax+eax*4]
	mov esi, [eax*8+entityHandlers]
	test esi, esi
	jz _Z10G_RunThinkP9gentity_s_20
_Z10G_RunThinkP9gentity_s_30:
	mov [ebp+0x8], ebx
	mov ecx, esi
	add esp, 0x10
	pop ebx
	pop esi
	pop ebp
	jmp ecx
_Z10G_RunThinkP9gentity_s_10:
	add esp, 0x10
	pop ebx
	pop esi
	pop ebp
	ret
_Z10G_RunThinkP9gentity_s_20:
	mov dword [esp+0x4], _cstring_null_entthink
	mov dword [esp], 0x2
	call _Z9Com_Error11errorParm_tPKcz
	jmp _Z10G_RunThinkP9gentity_s_30
	add [eax], al


;G_LogPrintf(char const*, ...)
_Z11G_LogPrintfPKcz:
	push ebp
	mov ebp, esp
	push edi
	push esi
	push ebx
	sub esp, 0x83c
	mov edx, [level+0x18]
	test edx, edx
	jz _Z11G_LogPrintfPKcz_10
	lea eax, [ebp+0xc]
	mov [ebp-0x1c], eax
	mov [esp+0xc], eax
	mov eax, [ebp+0x8]
	mov [esp+0x8], eax
	mov dword [esp+0x4], 0x400
	lea ebx, [ebp-0x81c]
	mov [esp], ebx
	call vsnprintf
	mov ecx, [level+0x1ec]
	mov esi, 0x10624dd3
	mov eax, ecx
	imul esi
	mov esi, edx
	sar esi, 0x6
	mov eax, ecx
	sar eax, 0x1f
	sub esi, eax
	mov ecx, 0x88888889
	mov eax, ecx
	imul esi
	lea edi, [edx+esi]
	sar edi, 0x5
	mov eax, esi
	sar eax, 0x1f
	sub edi, eax
	lea ecx, [edi*4]
	mov eax, edi
	shl eax, 0x6
	sub eax, ecx
	sub esi, eax
	mov eax, 0x66666667
	imul esi
	mov ecx, edx
	sar ecx, 0x2
	mov eax, esi
	sar eax, 0x1f
	sub ecx, eax
	mov [esp+0x18], ebx
	lea eax, [ecx+ecx*4]
	add eax, eax
	sub esi, eax
	mov [esp+0x14], esi
	mov [esp+0x10], ecx
	mov [esp+0xc], edi
	mov dword [esp+0x8], _cstring_3iii_s
	mov dword [esp+0x4], 0x400
	lea ebx, [ebp-0x41c]
	mov [esp], ebx
	call _Z11Com_sprintfPciPKcz
	mov eax, [level+0x18]
	mov [esp+0x8], eax
	cld
	mov ecx, 0xffffffff
	xor eax, eax
	mov edi, ebx
	repne scasb
	not ecx
	sub ecx, 0x1
	mov [esp+0x4], ecx
	mov [esp], ebx
	call _Z8FS_WritePKvii
_Z11G_LogPrintfPKcz_10:
	add esp, 0x83c
	pop ebx
	pop esi
	pop edi
	pop ebp
	ret
	nop


;G_SightTrace(int*, float const*, float const*, int, int)
_Z12G_SightTracePiPKfS1_ii:
	push ebp
	mov ebp, esp
	sub esp, 0x28
	mov eax, [ebp+0x18]
	mov [esp+0x1c], eax
	mov dword [esp+0x18], 0x3ff
	mov eax, [ebp+0x14]
	mov [esp+0x14], eax
	mov eax, [ebp+0x10]
	mov [esp+0x10], eax
	mov eax, vec3_origin
	mov [esp+0xc], eax
	mov [esp+0x8], eax
	mov eax, [ebp+0xc]
	mov [esp+0x4], eax
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z13SV_SightTracePiPKfS1_S1_S1_iii
	leave
	ret


;CalculateRanks()
_Z14CalculateRanksv:
	push ebp
	mov ebp, esp
	sub esp, 0x18
	xor ecx, ecx
	mov dword [level+0x21c], 0x0
	mov dword [level+0xb30], 0x0
	mov eax, [level+0x1e4]
	test eax, eax
	jle _Z14CalculateRanksv_10
	xor edx, edx
	mov eax, [level]
_Z14CalculateRanksv_40:
	cmp dword [eax+0x2f8c], 0x0
	jz _Z14CalculateRanksv_20
	mov [ecx*4+level+0x220], edx
	add ecx, 0x1
	mov [level+0x21c], ecx
	cmp dword [eax+0x3010], 0x3
	jz _Z14CalculateRanksv_20
	cmp dword [eax+0x2f8c], 0x2
	jz _Z14CalculateRanksv_30
_Z14CalculateRanksv_20:
	add edx, 0x1
	add eax, 0x3184
	cmp edx, [level+0x1e4]
	jl _Z14CalculateRanksv_40
_Z14CalculateRanksv_50:
	mov dword [esp+0xc], _Z9SortRanksPKvS0_
	mov dword [esp+0x8], 0x4
	mov [esp+0x4], ecx
	mov dword [esp], level+0x220
	call qsort
	mov dword [level+0x210], 0x1
	leave
	ret
_Z14CalculateRanksv_10:
	mov ecx, [level+0x21c]
	jmp _Z14CalculateRanksv_50
_Z14CalculateRanksv_30:
	add dword [level+0xb30], 0x1
	jmp _Z14CalculateRanksv_20


;G_ShutdownGame(int)
_Z14G_ShutdownGamei:
	push ebp
	mov ebp, esp
	push edi
	push esi
	push ebx
	sub esp, 0x1c
	mov edi, [ebp+0x8]
	mov [esp+0x8], edi
	mov dword [esp+0x4], _cstring__shutdowngame_d_
	mov dword [esp], 0xf
	call _Z10Com_PrintfiPKcz
	mov eax, [level+0x18]
	test eax, eax
	jnz _Z14G_ShutdownGamei_10
_Z14G_ShutdownGamei_130:
	mov eax, bgs
	mov dword [eax], 0x0
	mov eax, [level+0xc]
	test eax, eax
	jle _Z14G_ShutdownGamei_20
	mov esi, g_entities
	xor ebx, ebx
	jmp _Z14G_ShutdownGamei_30
_Z14G_ShutdownGamei_40:
	add ebx, 0x1
	add esi, 0x274
	cmp ebx, [level+0xc]
	jge _Z14G_ShutdownGamei_20
_Z14G_ShutdownGamei_30:
	cmp byte [esi+0x100], 0x0
	jz _Z14G_ShutdownGamei_40
	mov [esp], esi
	call _Z12G_FreeEntityP9gentity_s
	add ebx, 0x1
	add esi, 0x274
	cmp ebx, [level+0xc]
	jl _Z14G_ShutdownGamei_30
_Z14G_ShutdownGamei_20:
	cmp byte [g_entities+0x9cc18], 0x0
	jnz _Z14G_ShutdownGamei_50
_Z14G_ShutdownGamei_120:
	xor esi, esi
	mov ebx, level+0x1544
_Z14G_ShutdownGamei_60:
	mov dword [esp+0x4], 0x0
	mov [esp], ebx
	call _ZN9EntHandle6setEntEP9gentity_s
	add esi, 0x1
	add ebx, 0x4
	cmp esi, 0x20
	jnz _Z14G_ShutdownGamei_60
	mov dword [level+0xc], 0x0
	mov dword [level+0x10], 0x0
	mov dword [level+0x14], 0x0
	call _Z18HudElem_DestroyAllv
	mov dword [esp], 0x1
	call _Z18Scr_IsSystemActiveh
	test eax, eax
	jz _Z14G_ShutdownGamei_70
	mov eax, [level+0x1540]
	test eax, eax
	jz _Z14G_ShutdownGamei_80
_Z14G_ShutdownGamei_70:
	xor eax, eax
	cmp dword [level+0x1540], 0x0
	setz al
	mov [esp+0x4], eax
	mov dword [esp], 0x1
	call _Z18Scr_ShutdownSystemhi
	test edi, edi
	jnz _Z14G_ShutdownGamei_90
_Z14G_ShutdownGamei_180:
	mov eax, [level+0x2df8]
	test eax, eax
	jz _Z14G_ShutdownGamei_100
	mov [esp], eax
	call Z_VirtualFreeInternal
_Z14G_ShutdownGamei_100:
	mov dword [level+0x2df8], 0x0
	mov eax, [level+0x2df4]
	test eax, eax
	jnz _Z14G_ShutdownGamei_110
	mov dword [level+0x2df4], 0x0
	add esp, 0x1c
	pop ebx
	pop esi
	pop edi
	pop ebp
	jmp _ZN9EntHandle8ShutdownEv
_Z14G_ShutdownGamei_50:
	mov dword [esp], g_entities+0x9cb18
	call _Z12G_FreeEntityP9gentity_s
	jmp _Z14G_ShutdownGamei_120
_Z14G_ShutdownGamei_10:
	mov dword [esp], _cstring_shutdowngame
	call _Z11G_LogPrintfPKcz
	mov dword [esp], _cstring_1
	call _Z11G_LogPrintfPKcz
	mov eax, [level+0x18]
	mov [esp], eax
	call _Z13FS_FCloseFilei
	jmp _Z14G_ShutdownGamei_130
_Z14G_ShutdownGamei_110:
	mov [esp], eax
	call _Z13FS_FCloseFilei
	mov dword [level+0x2df4], 0x0
	add esp, 0x1c
	pop ebx
	pop esi
	pop edi
	pop ebp
	jmp _ZN9EntHandle8ShutdownEv
_Z14G_ShutdownGamei_90:
	call _Z20Mantle_ShutdownAnimsv
	call _Z16GScr_FreeScriptsv
	mov dword [esp], 0x1
	call _Z15Scr_FreeScriptsh
	mov ebx, level_bgs
	mov esi, level_bgs+0x13300
_Z14G_ShutdownGamei_150:
	mov eax, [ebx+0x99eac]
	test eax, eax
	jz _Z14G_ShutdownGamei_140
	mov dword [esp+0x4], 0x0
	mov [esp], eax
	call _Z13XAnimFreeTreeP11XAnimTree_sPFvPviE
	mov dword [ebx+0x99eac], 0x0
_Z14G_ShutdownGamei_140:
	add ebx, 0x4cc
	cmp esi, ebx
	jnz _Z14G_ShutdownGamei_150
	mov ebx, g_scr_data
	mov edx, ebx
	mov esi, ebx
_Z14G_ShutdownGamei_170:
	mov eax, [ebx+0x10bc]
	test eax, eax
	jz _Z14G_ShutdownGamei_160
	mov dword [esp+0x4], 0x0
	mov [esp], eax
	call _Z13XAnimFreeTreeP11XAnimTree_sPFvPviE
	mov dword [ebx+0x10bc], 0x0
	mov edx, esi
_Z14G_ShutdownGamei_160:
	add ebx, 0x4dc
	lea eax, [edx+0x26e0]
	cmp eax, ebx
	jnz _Z14G_ShutdownGamei_170
	mov dword [esp], 0x1
	call _Z24Com_FreeWeaponInfoMemoryi
	mov dword [esp], 0x0
	call Hunk_ClearToMarkLow
	jmp _Z14G_ShutdownGamei_180
_Z14G_ShutdownGamei_80:
	call _Z23SV_FreeClientScriptPersv
	jmp _Z14G_ShutdownGamei_70


;G_TraceCapsule(trace_t*, float const*, float const*, float const*, float const*, int, int)
_Z14G_TraceCapsuleP7trace_tPKfS2_S2_S2_ii:
	push ebp
	mov ebp, esp
	push ebx
	sub esp, 0x44
	mov eax, [ebp+0x1c]
	mov [esp+0x4], eax
	lea ebx, [ebp-0x14]
	mov [esp], ebx
	call _Z23SV_SetupIgnoreEntParamsP15IgnoreEntParamsi
	mov dword [esp+0x24], 0x0
	mov dword [esp+0x20], 0x0
	mov dword [esp+0x1c], 0x0
	mov eax, [ebp+0x20]
	mov [esp+0x18], eax
	mov [esp+0x14], ebx
	mov eax, [ebp+0x18]
	mov [esp+0x10], eax
	mov eax, [ebp+0x14]
	mov [esp+0xc], eax
	mov eax, [ebp+0x10]
	mov [esp+0x8], eax
	mov eax, [ebp+0xc]
	mov [esp+0x4], eax
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z8SV_TraceP7trace_tPKfS2_S2_S2_PK15IgnoreEntParamsiiPhi
	add esp, 0x44
	pop ebx
	pop ebp
	ret
	nop


;G_GetClientSize()
_Z15G_GetClientSizev:
	push ebp
	mov ebp, esp
	mov eax, 0x3184
	pop ebp
	ret


;G_AddDebugString(float const*, float const*, float, char const*, int)
_Z16G_AddDebugStringPKfS0_fPKci:
	push ebp
	mov ebp, esp
	sub esp, 0x28
	mov eax, [ebp+0x18]
	mov [esp+0x14], eax
	mov dword [esp+0x10], 0x1
	mov eax, [ebp+0x14]
	mov [esp+0xc], eax
	mov eax, [ebp+0x10]
	mov [esp+0x8], eax
	mov eax, [ebp+0xc]
	mov [esp+0x4], eax
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z17CL_AddDebugStringPKfS0_fPKcii
	leave
	ret
	nop


;G_GetClientScore(int)
_Z16G_GetClientScorei:
	push ebp
	mov ebp, esp
	mov ecx, [ebp+0x8]
	lea eax, [ecx+ecx*2]
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	add eax, ecx
	mov edx, [level]
	mov eax, [eax+edx+0x2f78]
	pop ebp
	ret


;G_GetClientState(int)
_Z16G_GetClientStatei:
	push ebp
	mov ebp, esp
	mov ecx, [ebp+0x8]
	lea eax, [ecx+ecx*2]
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	add eax, ecx
	add eax, [level]
	add eax, 0x300c
	pop ebp
	ret


;G_GetPlayerState(int)
_Z16G_GetPlayerStatei:
	push ebp
	mov ebp, esp
	mov ecx, [ebp+0x8]
	lea eax, [ecx+ecx*2]
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	add eax, ecx
	add eax, [level]
	pop ebp
	ret
	nop


;G_GetSavePersist()
_Z16G_GetSavePersistv:
	push ebp
	mov ebp, esp
	mov eax, [level+0x1540]
	pop ebp
	ret


;G_SetSavePersist(int)
_Z16G_SetSavePersisti:
	push ebp
	mov ebp, esp
	mov eax, [ebp+0x8]
	mov [level+0x1540], eax
	pop ebp
	ret
	nop


;G_LocationalTrace(trace_t*, float const*, float const*, int, int, unsigned char*)
_Z17G_LocationalTraceP7trace_tPKfS2_iiPh:
	push ebp
	mov ebp, esp
	push ebx
	sub esp, 0x44
	mov eax, [ebp+0x14]
	mov [esp+0x4], eax
	lea ebx, [ebp-0x14]
	mov [esp], ebx
	call _Z23SV_SetupIgnoreEntParamsP15IgnoreEntParamsi
	mov dword [esp+0x24], 0x1
	mov eax, [ebp+0x1c]
	mov [esp+0x20], eax
	mov dword [esp+0x1c], 0x1
	mov eax, [ebp+0x18]
	mov [esp+0x18], eax
	mov [esp+0x14], ebx
	mov eax, [ebp+0x10]
	mov [esp+0x10], eax
	mov eax, vec3_origin
	mov [esp+0xc], eax
	mov [esp+0x8], eax
	mov eax, [ebp+0xc]
	mov [esp+0x4], eax
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z8SV_TraceP7trace_tPKfS2_S2_S2_PK15IgnoreEntParamsiiPhi
	add esp, 0x44
	pop ebx
	pop ebp
	ret
	nop


;Hunk_AllocXAnimServer(int)
_Z21Hunk_AllocXAnimServeri:
	push ebp
	mov ebp, esp
	pop ebp
	jmp _Z21Hunk_AllocLowInternali
	nop


;G_GetClientArchiveTime(int)
_Z22G_GetClientArchiveTimei:
	push ebp
	mov ebp, esp
	mov ecx, [ebp+0x8]
	lea eax, [ecx+ecx*2]
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	add eax, ecx
	mov edx, [level]
	mov eax, [eax+edx+0x2f74]
	pop ebp
	ret


;G_GetFogOpaqueDistSqrd()
_Z22G_GetFogOpaqueDistSqrdv:
	push ebp
	mov ebp, esp
	fld dword [level+0x15c8]
	pop ebp
	ret
	nop


;G_SetClientArchiveTime(int, int)
_Z22G_SetClientArchiveTimeii:
	push ebp
	mov ebp, esp
	mov ecx, [ebp+0x8]
	lea eax, [ecx+ecx*2]
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	mov edx, eax
	shl edx, 0x6
	add eax, edx
	add eax, ecx
	mov ecx, [ebp+0xc]
	mov edx, [level]
	mov [eax+edx+0x2f74], ecx
	pop ebp
	ret
	nop


;G_TraceCapsuleComplete(float const*, float const*, float const*, float const*, int, int)
_Z22G_TraceCapsuleCompletePKfS0_S0_S0_ii:
	push ebp
	mov ebp, esp
	sub esp, 0x38
	mov dword [esp+0x24], 0x0
	mov dword [esp+0x20], 0x0
	mov dword [esp+0x1c], 0x0
	mov eax, [ebp+0x1c]
	mov [esp+0x18], eax
	mov dword [esp+0x14], 0x3ff
	mov eax, [ebp+0x18]
	mov [esp+0x10], eax
	mov eax, [ebp+0x14]
	mov [esp+0xc], eax
	mov eax, [ebp+0x10]
	mov [esp+0x8], eax
	mov eax, [ebp+0xc]
	mov [esp+0x4], eax
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z14SV_TracePassedPKfS0_S0_S0_iiiiPhi
	leave
	ret


;G_ExitAfterConnectPaths()
_Z23G_ExitAfterConnectPathsv:
	push ebp
	mov ebp, esp
	xor eax, eax
	pop ebp
	ret
	nop


;G_LocationalTracePassed(float const*, float const*, int, int, int, unsigned char*)
_Z23G_LocationalTracePassedPKfS0_iiiPh:
	push ebp
	mov ebp, esp
	sub esp, 0x38
	mov dword [esp+0x24], 0x1
	mov eax, [ebp+0x1c]
	mov [esp+0x20], eax
	mov dword [esp+0x1c], 0x1
	mov eax, [ebp+0x18]
	mov [esp+0x18], eax
	mov eax, [ebp+0x14]
	mov [esp+0x14], eax
	mov eax, [ebp+0x10]
	mov [esp+0x10], eax
	mov eax, [ebp+0xc]
	mov [esp+0xc], eax
	mov eax, vec3_origin
	mov [esp+0x8], eax
	mov [esp+0x4], eax
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z14SV_TracePassedPKfS0_S0_S0_iiiiPhi
	leave
	ret
	nop


;G_LocationalTraceAllowChildren(trace_t*, float const*, float const*, int, int, unsigned char*)
_Z30G_LocationalTraceAllowChildrenP7trace_tPKfS2_iiPh:
	push ebp
	mov ebp, esp
	push ebx
	sub esp, 0x44
	mov eax, [ebp+0x14]
	mov [esp+0x4], eax
	lea ebx, [ebp-0x14]
	mov [esp], ebx
	call _Z23SV_SetupIgnoreEntParamsP15IgnoreEntParamsi
	mov byte [ebp-0x9], 0x0
	mov dword [esp+0x24], 0x1
	mov eax, [ebp+0x1c]
	mov [esp+0x20], eax
	mov dword [esp+0x1c], 0x1
	mov eax, [ebp+0x18]
	mov [esp+0x18], eax
	mov [esp+0x14], ebx
	mov eax, [ebp+0x10]
	mov [esp+0x10], eax
	mov eax, vec3_origin
	mov [esp+0xc], eax
	mov [esp+0x8], eax
	mov eax, [ebp+0xc]
	mov [esp+0x4], eax
	mov eax, [ebp+0x8]
	mov [esp], eax
	call _Z8SV_TraceP7trace_tPKfS2_S2_S2_PK15IgnoreEntParamsiiPhi
	add esp, 0x44
	pop ebx
	pop ebp
	ret
	nop


;CheckVote()
_Z9CheckVotev:
	push ebp
	mov ebp, esp
	push esi
	push ebx
	sub esp, 0x20
	mov eax, [level+0xb24]
	test eax, eax
	jz _Z9CheckVotev_10
	cmp eax, [level+0x1ec]
	jl _Z9CheckVotev_20
_Z9CheckVotev_10:
	mov eax, [level+0xb20]
	test eax, eax
	jz _Z9CheckVotev_30
	cmp [level+0x1ec], eax
	js _Z9CheckVotev_40
	mov esi, [level+0xb28]
	mov ebx, [level+0xb2c]
	lea edx, [esi+ebx]
	mov eax, [level+0xb30]
	sub eax, edx
	cvtsi2ss xmm0, eax
	mov eax, [g_voteAbstainWeight]
	mulss xmm0, [eax+0xc]
	movss [esp], xmm0
	call ceilf
	fstp dword [ebp-0xc]
	cvttss2si eax, [ebp-0xc]
	add ebx, eax
	cmp esi, ebx
	jg _Z9CheckVotev_50
_Z9CheckVotev_60:
	mov dword [esp+0x4], 0x65
	mov dword [esp], _cstring_c_game_votefaile
	call _Z2vaPKcz
	mov [esp+0x8], eax
	mov dword [esp+0x4], 0x0
	mov dword [esp], 0xffffffff
	call _Z24SV_GameSendServerCommandi11svscmd_typePKc
_Z9CheckVotev_70:
	mov dword [level+0xb20], 0x0
	mov dword [esp+0x4], _cstring_null
	mov dword [esp], 0xd
	call _Z18SV_SetConfigstringiPKc
_Z9CheckVotev_30:
	add esp, 0x20
	pop ebx
	pop esi
	pop ebp
	ret
_Z9CheckVotev_40:
	mov edx, [level+0xb30]
	mov eax, edx
	shr eax, 0x1f
	add eax, edx
	sar eax, 1
	add eax, 0x1
	cmp eax, [level+0xb28]
	jle _Z9CheckVotev_50
	sub edx, eax
	cmp [level+0xb2c], edx
	jle _Z9CheckVotev_30
	jmp _Z9CheckVotev_60
_Z9CheckVotev_50:
	mov dword [esp+0x4], 0x65
	mov dword [esp], _cstring_c_game_votepasse
	call _Z2vaPKcz
	mov [esp+0x8], eax
	mov dword [esp+0x4], 0x0
	mov dword [esp], 0xffffffff
	call _Z24SV_GameSendServerCommandi11svscmd_typePKc
	mov eax, [level+0x1ec]
	add eax, 0xbb8
	mov [level+0xb24], eax
	jmp _Z9CheckVotev_70
_Z9CheckVotev_20:
	mov dword [level+0xb24], 0x0
	mov dword [esp+0x4], level+0x320
	mov dword [esp], _cstring_s
	call _Z2vaPKcz
	mov [esp+0x4], eax
	mov dword [esp], 0x0
	call _Z12Cbuf_AddTextiPKc
	jmp _Z9CheckVotev_10


;ExitLevel()
_Z9ExitLevelv:
	push ebp
	mov ebp, esp
	push ebx
	sub esp, 0x14
	mov dword [esp+0x4], _cstring_map_rotate
	mov dword [esp], 0x0
	call _Z12Cbuf_AddTextiPKc
	mov dword [level+0x200], 0x0
	mov dword [level+0x204], 0x0
	mov ebx, [g_maxclients]
	mov eax, [ebx+0xc]
	test eax, eax
	jle _Z9ExitLevelv_10
	xor ecx, ecx
	xor edx, edx
	jmp _Z9ExitLevelv_20
_Z9ExitLevelv_40:
	add ecx, 0x1
	add edx, 0x3184
	cmp ecx, [ebx+0xc]
	jge _Z9ExitLevelv_30
_Z9ExitLevelv_20:
	mov eax, edx
	add eax, [level]
	cmp dword [eax+0x2f8c], 0x2
	jnz _Z9ExitLevelv_40
	mov dword [eax+0x2f78], 0x0
	mov ebx, [g_maxclients]
	add ecx, 0x1
	add edx, 0x3184
	cmp ecx, [ebx+0xc]
	jl _Z9ExitLevelv_20
_Z9ExitLevelv_30:
	mov ecx, [ebx+0xc]
	test ecx, ecx
	jle _Z9ExitLevelv_10
	xor ecx, ecx
	xor edx, edx
	jmp _Z9ExitLevelv_50
_Z9ExitLevelv_60:
	add ecx, 0x1
	add edx, 0x3184
	cmp ecx, [ebx+0xc]
	jge _Z9ExitLevelv_10
_Z9ExitLevelv_50:
	mov eax, edx
	add eax, [level]
	cmp dword [eax+0x2f8c], 0x2
	jnz _Z9ExitLevelv_60
	mov dword [eax+0x2f8c], 0x1
	mov ebx, [g_maxclients]
	add ecx, 0x1
	add edx, 0x3184
	cmp ecx, [ebx+0xc]
	jl _Z9ExitLevelv_50
_Z9ExitLevelv_10:
	mov dword [esp], _cstring_exitlevel_execut
	call _Z11G_LogPrintfPKcz
	add esp, 0x14
	pop ebx
	pop ebp
	ret
	nop


;Initialized global or static variables of g_main_mp:
SECTION .data
g_entinfoNames: dd _cstring_off, _cstring_all_ents, 0x0
_ZZ15G_RegisterDvarsvE28MY_DEFAULT_USEHOLDSPAWNDELAY: dd 0x1f4, 0x0, 0x0, 0x0, 0x0
entityHandlers: dd 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z11Touch_MultiP9gentity_sS0_i, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z8hurt_useP9gentity_sS0_S0_, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z10hurt_touchP9gentity_sS0_i, _Z8hurt_useP9gentity_sS0_S0_, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z18Use_trigger_damageP9gentity_sS0_S0_, _Z19Pain_trigger_damageP9gentity_sS0_iPKfiS2_13hitLocation_ti, _Z18Die_trigger_damageP9gentity_sS0_S0_iiiPKf13hitLocation_ti, 0x0, 0x0, 0x0, 0x0, _Z19Reached_ScriptMoverP9gentity_s, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z19Reached_ScriptMoverP9gentity_s, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z16G_ExplodeMissileP9gentity_s, 0x0, 0x0, _Z15Touch_Item_AutoP9gentity_sS0_i, 0x0, 0x0, 0x0, 0x0, 0x3, 0x4, _Z18G_TimedObjectThinkP9gentity_s, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z16G_ExplodeMissileP9gentity_s, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z10player_dieP9gentity_sS0_S0_iiiPKf13hitLocation_ti, _Z18G_PlayerControllerPK9gentity_sPi, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z10player_dieP9gentity_sS0_S0_iiiPKf13hitLocation_ti, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z18G_PlayerControllerPK9gentity_sPi, 0x0, 0x0, _Z7BodyEndP9gentity_s, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z17turret_think_initP9gentity_s, 0x0, 0x0, 0x0, _Z10turret_useP9gentity_sS0_S0_, 0x0, 0x0, _Z17turret_controllerPK9gentity_sPi, 0x0, 0x0, _Z12turret_thinkP9gentity_s, 0x0, 0x0, 0x0, _Z10turret_useP9gentity_sS0_S0_, 0x0, 0x0, _Z17turret_controllerPK9gentity_sPi, 0x0, 0x0, _Z21DroppedItemClearOwnerP9gentity_s, 0x0, 0x0, _Z15Touch_Item_AutoP9gentity_sS0_i, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z18FinishSpawningItemP9gentity_s, 0x0, 0x0, _Z15Touch_Item_AutoP9gentity_sS0_i, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z15Touch_Item_AutoP9gentity_sS0_i, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z15use_trigger_useP9gentity_sS0_S0_, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z19Reached_ScriptMoverP9gentity_s, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z12G_FreeEntityP9gentity_s, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, _Z21G_VehEntHandler_ThinkP9gentity_s, 0x0, 0x0, _Z21G_VehEntHandler_TouchP9gentity_sS0_i, _Z19G_VehEntHandler_UseP9gentity_sS0_S0_, _Z20G_VehEntHandler_PainP9gentity_sS0_iPKfiS2_13hitLocation_ti, _Z19G_VehEntHandler_DieP9gentity_sS0_S0_iiiPKf13hitLocation_ti, _Z26G_VehEntHandler_ControllerPK9gentity_sPi, 0x0, 0x0, _Z16Helicopter_ThinkP9gentity_s, 0x0, 0x0, 0x0, 0x0, _Z15Helicopter_PainP9gentity_sS0_iPKfiS2_13hitLocation_ti, _Z14Helicopter_DieP9gentity_sS0_S0_iiiPKf13hitLocation_ti, _Z21Helicopter_ControllerPK9gentity_sPi, 0x0, 0x0


;Initialized constant data of g_main_mp:
SECTION .rdata


;Zero initialized global or static variables of g_main_mp:
SECTION .bss
g_clients: resb 0xc6100
g_compassShowEnemies: resb 0x4
bullet_penetrationEnabled: resb 0x4
g_debugLocDamage: resb 0x4
g_entities: resb 0x9d000
level: resb 0x2ea0
g_dropForwardSpeed: resb 0x4
g_dropHorzSpeedRand: resb 0x4
g_dropUpSpeedBase: resb 0x4
g_dropUpSpeedRand: resb 0x4
g_maxDroppedWeapons: resb 0x4
pickupPrints: resb 0x4
g_minGrenadeDamageSpeed: resb 0x4
g_banIPs: resb 0x4
g_dedicated: resb 0x4
g_antilag: resb 0x4
melee_debug: resb 0x4
g_useholdspawndelay: resb 0x4
g_useholdtime: resb 0x4
player_MGUseRadius: resb 0x4
player_throwbackInnerRadius: resb 0x4
player_throwbackOuterRadius: resb 0x4
g_NoScriptSpam: resb 0x4
g_fogColorReadOnly: resb 0x4
g_fogHalfDistReadOnly: resb 0x4
g_fogStartDistReadOnly: resb 0x4
g_gametype: resb 0x14
g_maxclients: resb 0x4
level_bgs: resb 0xacd20
g_debugDamage: resb 0x4
radius_damage_debug: resb 0x4
g_allowVote: resb 0x4
g_cheats: resb 0x4
g_deadChat: resb 0x8
g_oldVoting: resb 0x4
g_gravity: resb 0x4
g_motd: resb 0x4
g_clonePlayerMaxVelocity: resb 0x4
g_knockback: resb 0x4
g_voiceChatTalkingDuration: resb 0x4
g_inactivity: resb 0x4
g_mantleBlockTimeBuffer: resb 0x4
g_playerCollisionEjectSpeed: resb 0x4
g_smoothClients: resb 0x8
g_speed: resb 0x4
g_synchronousClients: resb 0x4
g_ScoresColor_Allies: resb 0x4
g_ScoresColor_Axis: resb 0x4
g_ScoresColor_EnemyTeam: resb 0x4
g_ScoresColor_Free: resb 0x4
g_ScoresColor_MyTeam: resb 0x4
g_ScoresColor_Spectator: resb 0x4
g_TeamColor_Allies: resb 0x4
g_TeamColor_Axis: resb 0x4
g_TeamColor_EnemyTeam: resb 0x4
g_TeamColor_Free: resb 0x4
g_TeamColor_MyTeam: resb 0x4
g_TeamColor_Spectator: resb 0x4
g_TeamIcon_Allies: resb 0x4
g_TeamIcon_Axis: resb 0x4
g_TeamIcon_Free: resb 0x4
g_TeamIcon_Spectator: resb 0x4
g_TeamName_Allies: resb 0x4
g_TeamName_Axis: resb 0x4
g_debugBullets: resb 0x4
g_dumpAnims: resb 0x4
g_entinfo: resb 0x4
g_friendlyNameDist: resb 0x4
g_friendlyfireDist: resb 0x4
g_listEntity: resb 0x4
g_log: resb 0x4
g_logSync: resb 0x4
g_password: resb 0x4
g_redCrosshairs: resb 0x4
g_voteAbstainWeight: resb 0x4
voice_deadChat: resb 0x4
voice_global: resb 0x4
voice_localEcho: resb 0x4


;All cstrings:
SECTION .rdata
_cstring_enable_cheats:		db "Enable cheats",0
_cstring_sv_cheats:		db "sv_cheats",0
_cstring_the_name_of_the_:		db "The name of the game",0
_cstring_call_of_duty_4:		db "Call of Duty 4",0
_cstring_gamename:		db "gamename",0
_cstring_the_date_compile:		db "The date compiled",0
_cstring_feb_12_2009:		db "Feb 12 2009",0
_cstring_gamedate:		db "gamedate",0
_cstring_the_current_map_:		db "The current map name",0
_cstring_null:		db 0
_cstring_sv_mapname:		db "sv_mapname",0
_cstring_the_current_camp:		db "The current campaign",0
_cstring_war:		db "war",0
_cstring_g_gametype:		db "g_gametype",0
_cstring_the_maximum_numb:		db "The maximum number of clients that can connect to a server",0
_cstring_ui_maxclients:		db "ui_maxclients",0
_cstring_sv_maxclients:		db "sv_maxclients",0
_cstring_call_client_thin:		db "Call ",27h,"client think",27h," exactly once for each server frame to make smooth demos",0
_cstring_g_synchronouscli:		db "g_synchronousClients",0
_cstring_log_file_name:		db "Log file name",0
_cstring_games_mplog:		db "games_mp.log",0
_cstring_g_log:		db "g_log",0
_cstring_enable_synchrono:		db "Enable synchronous logging",0
_cstring_g_logsync:		db "g_logSync",0
_cstring_password:		db "Password",0
_cstring_g_password:		db "g_password",0
_cstring_ip_addresses_to_:		db "IP addresses to ban from playing",0
_cstring_g_banips:		db "g_banIPs",0
_cstring_dedicated_server:		db "Dedicated server",0
_cstring_dedicated:		db "dedicated",0
_cstring_player_speed:		db "Player speed",0
_cstring_g_speed:		db "g_speed",0
_cstring_game_gravity_in_:		db "Game gravity in inches per second per second",0
_cstring_g_gravity:		db "g_gravity",0
_cstring_maximum_knockbac:		db "Maximum knockback",0
_cstring_g_knockback:		db "g_knockback",0
_cstring_maximum_number_o:		db "Maximum number of dropped weapons",0
_cstring_g_maxdroppedweap:		db "g_maxDroppedWeapons",0
_cstring_time_delay_befor:		db "Time delay before player is kicked for inactivity",0
_cstring_g_inactivity:		db "g_inactivity",0
_cstring_show_debug_infor:		db "Show debug information for damage",0
_cstring_g_debugdamage:		db "g_debugDamage",0
_cstring_show_debug_infor1:		db "Show debug information for bullets",0
_cstring_g_debugbullets:		db "g_debugBullets",0
_cstring_enabledisable_bu:		db "Enable/Disable bullet penetration.",0
_cstring_bullet_penetrati:		db "bullet_penetrationEnabled",0
_cstring_display_entity_i:		db "Display entity information",0
_cstring_g_entinfo:		db "g_entinfo",0
_cstring_the_message_of_t:		db "The message of the day",0
_cstring_g_motd:		db "g_motd",0
_cstring_speed_at_which_t:		db "Speed at which to push intersecting players away from each other",0
_cstring_g_playercollisio:		db "g_playerCollisionEjectSpeed",0
_cstring_forward_speed_of:		db "Forward speed of a dropped item",0
_cstring_g_dropforwardspe:		db "g_dropForwardSpeed",0
_cstring_base_component_o:		db "Base component of the initial vertical speed of a dropped item",0
_cstring_g_dropupspeedbas:		db "g_dropUpSpeedBase",0
_cstring_random_component:		db "Random component of the initial vertical speed of a dropped item",0
_cstring_g_dropupspeedran:		db "g_dropUpSpeedRand",0
_cstring_random_component1:		db "Random component of the initial horizontal speed of a dropped item",0
_cstring_g_drophorzspeedr:		db "g_dropHorzSpeedRand",0
_cstring_maximum_velocity:		db "Maximum velocity in each axis of a cloned player",0ah,"(for death animations)",0
_cstring_g_cloneplayermax:		db "g_clonePlayerMaxVelocity",0
_cstring_send_voice_messa:		db "Send voice messages to everybody",0
_cstring_voice_global:		db "voice_global",0
_cstring_echo_voice_chat_:		db "Echo voice chat back to the player",0
_cstring_voice_localecho:		db "voice_localEcho",0
_cstring_allow_dead_playe:		db "Allow dead players to talk to living players",0
_cstring_voice_deadchat:		db "voice_deadChat",0
_cstring_enable_voting_on:		db "Enable voting on this server",0
_cstring_g_allowvote:		db "g_allowVote",0
_cstring_list_the_entitie:		db "List the entities",0
_cstring_g_listentity:		db "g_listEntity",0
_cstring_allow_dead_playe1:		db "Allow dead players to chat with living players",0
_cstring_g_deadchat:		db "g_deadChat",0
_cstring_time_after_the_l:		db "Time after the last talk packet was received that the player is considered by the",0ah,"server to still be talking in milliseconds",0
_cstring_g_voicechattalki:		db "g_voiceChatTalkingDuration",0
_cstring_shader_name_for_:		db "Shader name for the allied scores banner",0
_cstring_faction_128_usmc:		db "faction_128_usmc",0
_cstring_g_teamicon_allie:		db "g_TeamIcon_Allies",0
_cstring_shader_name_for_1:		db "Shader name for the axis scores banner",0
_cstring_faction_128_arab:		db "faction_128_arab",0
_cstring_g_teamicon_axis:		db "g_TeamIcon_Axis",0
_cstring_shader_name_for_2:		db "Shader name for the scores of players with no team",0
_cstring_g_teamicon_free:		db "g_TeamIcon_Free",0
_cstring_shader_name_for_3:		db "Shader name for the scores of players who are spectators",0
_cstring_g_teamicon_spect:		db "g_TeamIcon_Spectator",0
_cstring_player_team_colo:		db "Player team color on scoreboard",0
_cstring_g_scorescolor_my:		db "g_ScoresColor_MyTeam",0
_cstring_enemy_team_color:		db "Enemy team color on scoreboard",0
_cstring_g_scorescolor_en:		db "g_ScoresColor_EnemyTeam",0
_cstring_spectator_team_c:		db "Spectator team color on scoreboard",0
_cstring_g_scorescolor_sp:		db "g_ScoresColor_Spectator",0
_cstring_free_team_color_:		db "Free Team color on scoreboard",0
_cstring_g_scorescolor_fr:		db "g_ScoresColor_Free",0
_cstring_allies_team_colo:		db "Allies team color on scoreboard",0
_cstring_g_scorescolor_al:		db "g_ScoresColor_Allies",0
_cstring_axis_team_color_:		db "Axis team color on scoreboard",0
_cstring_g_scorescolor_ax:		db "g_ScoresColor_Axis",0
_cstring_allied_team_name:		db "Allied team name",0
_cstring_game_allies:		db "GAME_ALLIES",0
_cstring_g_teamname_allie:		db "g_TeamName_Allies",0
_cstring_axis_team_name:		db "Axis team name",0
_cstring_game_axis:		db "GAME_AXIS",0
_cstring_g_teamname_axis:		db "g_TeamName_Axis",0
_cstring_allies_team_colo1:		db "Allies team color",0
_cstring_g_teamcolor_alli:		db "g_TeamColor_Allies",0
_cstring_axis_team_color:		db "Axis team color",0
_cstring_g_teamcolor_axis:		db "g_TeamColor_Axis",0
_cstring_player_team_colo1:		db "Player team color",0
_cstring_g_teamcolor_myte:		db "g_TeamColor_MyTeam",0
_cstring_enemy_team_color1:		db "Enemy team color",0
_cstring_g_teamcolor_enem:		db "g_TeamColor_EnemyTeam",0
_cstring_spectator_team_c1:		db "Spectator team color",0
_cstring_g_teamcolor_spec:		db "g_TeamColor_Spectator",0
_cstring_free_team_color:		db "Free Team color",0
_cstring_g_teamcolor_free:		db "g_TeamColor_Free",0
_cstring_enable_extrapola:		db "Enable extrapolation between client states",0
_cstring_g_smoothclients:		db "g_smoothClients",0
_cstring_turn_on_antilag_:		db "Turn on antilag checks for weapon hits",0
_cstring_g_antilag:		db "g_antilag",0
_cstring_use_old_voting_m:		db "Use old voting method",0
_cstring_g_oldvoting:		db "g_oldVoting",0
_cstring_how_much_an_abst:		db "How much an abstained vote counts as a ",27h,"no",27h," vote",0
_cstring_g_voteabstainwei:		db "g_voteAbstainWeight",0
_cstring_turn_off_script_:		db "Turn off script debugging info",0
_cstring_g_no_script_spam:		db "g_no_script_spam",0
_cstring_turn_on_debuggin:		db "Turn on debugging information for locational damage",0
_cstring_g_debuglocdamage:		db "g_debugLocDamage",0
_cstring_maximum_range_fo:		db "Maximum range for disabling fire at a friendly",0
_cstring_g_friendlyfiredi:		db "g_friendlyfireDist",0
_cstring_maximum_range_fo1:		db "Maximum range for seeing a friendly",27h,"s name",0
_cstring_g_friendlynamedi:		db "g_friendlyNameDist",0
_cstring_turn_on_debug_li:		db "Turn on debug lines for melee traces",0
_cstring_melee_debug:		db "melee_debug",0
_cstring_turn_on_debug_li1:		db "Turn on debug lines for radius damage traces",0
_cstring_radius_damage_de:		db "radius_damage_debug",0
_cstring_the_radius_to_a_:		db "The radius to a live grenade player must be within initially to do a throwback",0
_cstring_player_throwback:		db "player_throwbackInnerRadius",0
_cstring_the_radius_playe:		db "The radius player is allow to throwback a grenade once the player has been in the inner radius",0
_cstring_player_throwback1:		db "player_throwbackOuterRadius",0
_cstring_the_radius_withi:		db "The radius within which a player can mount a machine gun",0
_cstring_player_mguseradi:		db "player_MGUseRadius",0
_cstring_minimum_speed_at:		db "Minimum speed at which getting hit be a grenade will do damage (not the grenade explosion damage)",0
_cstring_g_mingrenadedama:		db "g_minGrenadeDamageSpeed",0
_cstring_whether_enemies_:		db "Whether enemies are visible on the compass at all times",0
_cstring_g_compassshowene:		db "g_compassShowEnemies",0
_cstring_print_a_message_:		db "Print a message to the game window when picking up ammo, etc.",0
_cstring_pickupprints:		db "pickupPrints",0
_cstring_animation_debugg:		db "Animation debugging info for the given character number",0
_cstring_g_dumpanims:		db "g_dumpAnims",0
_cstring_time_to_hold_the:		db "Time to hold the ",27h,"use",27h," button to activate use",0
_cstring_g_useholdtime:		db "g_useholdtime",0
_cstring_time_in_millisec:		db "Time in milliseconds that the player is unable to ",27h,"use",27h," after spawning",0
_cstring_g_useholdspawnde:		db "g_useholdspawndelay",0
_cstring_whether_red_cros:		db "Whether red crosshairs are enabled",0
_cstring_g_redcrosshairs:		db "g_redCrosshairs",0
_cstring_time_that_the_cl:		db "Time that the client think is delayed after mantling",0
_cstring_g_mantleblocktim:		db "g_mantleBlockTimeBuffer",0
_cstring_fog_color_that_w:		db "Fog color that was set in the most recent call to ",22h,"setexpfog",22h,0
_cstring_g_fogcolorreadon:		db "g_fogColorReadOnly",0
_cstring_fog_start_distan:		db "Fog start distance that was set in the most recent call to ",22h,"setexpfog",22h,0
_cstring_g_fogstartdistre:		db "g_fogStartDistReadOnly",0
_cstring_g_foghalfdistrea:		db "g_fogHalfDistReadOnly",0
_cstring_null_entthink:		db 015h,"NULL ent->think",0
_cstring_i_s:		db "#%i; ",22h,"%s",22h,0
_cstring_ground_i:		db "ground: #%i",0
_cstring_s_i__i:		db "%s (%i + %i)",0
_cstring__game_initializa:		db "------- Game Initialization -------",0ah,0
_cstring_gamename_s:		db "gamename: %s",0ah,0
_cstring_gamedate_s:		db "gamedate: %s",0ah,0
_cstring_warning_couldnt_:		db "WARNING: Couldn",27h,"t open logfile: %s",0ah,0
_cstring_0:		db "0",0
_cstring_winner:		db "winner",0
_cstring_:		db "-----------------------------------",0ah,0
_cstring_1:		db "------------------------------------------------------------",0ah,0
_cstring_initgame_s:		db "InitGame: %s",0ah,0
_cstring_not_logging_to_d:		db "Not logging to disk.",0ah,0
_cstring_server:		db "server:",0ah,0
_cstring_4i_s:		db "%4i: %s",0ah,0
_cstring_3iii_s:		db "%3i:%i%i %s",0
_cstring__shutdowngame_d_:		db "==== ShutdownGame (%d) ====",0ah,0
_cstring_shutdowngame:		db "ShutdownGame:",0ah,0
_cstring_c_game_votefaile:		db "%c ",22h,"GAME_VOTEFAILED",22h,0
_cstring_c_game_votepasse:		db "%c ",22h,"GAME_VOTEPASSED",22h,0
_cstring_s:		db "%s",0ah,0
_cstring_map_rotate:		db "map_rotate",0ah,0
_cstring_exitlevel_execut:		db "ExitLevel: executed",0ah,0
_cstring_off:		db "off",0
_cstring_all_ents:		db "all ents",0



;All constant floats and doubles:
SECTION .rdata
_float_10_00000000:		dd 0x41200000	; 10
_float_2_00000000:		dd 0x40000000	; 2
_float_4_00000000:		dd 0x40800000	; 4
_float_0_00100000:		dd 0x3a83126f	; 0.001

