Function at 0x4bd6b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x617e34
push eax
mov dword fs:[0], esp
sub esp, 0x68
push ebx
mov ebx, ecx
push ebp
push esi
mov eax, dword [ebx + 0xf0]
push edi
test al, 0x20
lea ebp, [ebx + 0x6c]
jne 0x4b964e
mov ebp, dword [ebx + 0x20]
test ah, 1
mov dword [esp + 0x1c], ebp
je 0x4b965f
mov esi, dword [ebx + 0xe8]
jmp 0x4b9662
mov esi, dword [ebx + 0x24]
test al, 4
mov dword [esp + 0x20], esi
je 0x4b9673
lea ecx, [ebx + 0x34]
mov dword [esp + 0x14], ecx
jmp 0x4b967a
mov edx, dword [ebx + 0x14]
mov dword [esp + 0x14], edx
test al, 8
lea edi, [ebx + 0x40]
jne 0x4b9684
mov edi, dword [ebx + 0x18]
test al, 2
mov dword [esp + 0x18], edi
je 0x4bae37
cmp dword [ebx + 0xe8], 0x1e
jne 0x4b9e69
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
lea esi, [ebx + 0x28]
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.player_flags
call fcn.00405b90
lea eax, [esp + 0x4c]
mov ecx, esi
push eax
call fcn.0042fd10
push 0
push 0x2c
lea ecx, [esp + 0x40]
mov dword [esp + 0x88], 0
call fcn.00490bb0
mov edi, eax
cmp edi, 0xffffffff
je 0x4b9e55
lea ecx, [esp + 0x44]
push edi
push ecx
lea ecx, [esp + 0x40]
call fcn.00482090
mov ecx, eax
mov byte [esp + 0x80], 1
call fcn.004fde70
lea ecx, [esp + 0x44]
mov ebp, eax
mov byte [esp + 0x80], 0
call fcn.00402ab0
inc edi
push 0xffffffffffffffff
lea edx, [esp + 0x48]
push edi
push edx
lea ecx, [esp + 0x44]
call fcn.004820c0
mov ecx, eax
mov byte [esp + 0x80], 2
call fcn.004fde70
lea ecx, [esp + 0x44]
mov dword [esp + 0x1c], eax
mov byte [esp + 0x80], 0
call fcn.00402ab0
mov eax, ebp
sub esp, 8
and eax, 3
mov edx, esp
mov dword [esp + 0x30], esp
mov eax, dword [eax*4 + 0x6a1d08]
test eax, eax
mov dword [edx], eax
je 0x4b9780
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b9782
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.NumberOfLives
call fcn.00405b90
mov ecx, esi
call fcn.00443640
mov ecx, ebp
sub esp, 8
shr ecx, 2
and ecx, 7
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, dword [ecx*4 + 0x6a1d18]
test edi, edi
mov dword [edx], edi
je 0x4b97c9
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b97cb
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.MaximumHealth
call fcn.00405b90
mov ecx, esi
call fcn.00443640
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov edx, ebp
mov ecx, 1
shr edx, 5
and edx, 1
mov byte [esp + 0x88], 3
sub ecx, edx
push ecx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.Shields
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov ecx, ebp
mov byte [esp + 0x88], 4
shr ecx, 6
and ecx, 3
lea edx, [ecx + ecx*4]
push edx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.RespawnTime
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov ecx, ebp
mov byte [esp + 0x88], 5
shr ecx, 8
and ecx, 3
lea ecx, [ecx + ecx*4]
push ecx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.RespawnGrowth
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov edx, ebp
mov byte [esp + 0x88], 6
shr edx, 0xa
and edx, 1
push edx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.OddManOut
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov ecx, ebp
mov byte [esp + 0x88], 7
shr ecx, 0xb
and ecx, 1
push ecx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.InvisiblePlayers
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov ecx, ebp
mov byte [esp + 0x88], 8
shr ecx, 0xc
and ecx, 3
lea edx, [ecx + ecx*4]
push edx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.SuicidePenalty
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov ecx, ebp
mov byte [esp + 0x88], 9
shr ecx, 0xe
and ecx, 1
push ecx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.InfiniteGrenades
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
mov edx, ebp
sub esp, 8
shr edx, 0xf
and edx, 0xf
mov dword [esp + 0x30], esp
mov edi, dword [edx*4 + 0x6a1d38]
mov edx, esp
test edi, edi
mov dword [edx], edi
je 0x4b9ae5
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b9ae7
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.WeaponSet
call fcn.00405b90
mov ecx, esi
call fcn.00443640
mov eax, ebp
sub esp, 8
shr eax, 0x13
and eax, 1
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, dword [eax*4 + 0x6a1d78]
test edi, edi
mov dword [edx], edi
je 0x4b9b2e
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b9b30
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.StartingEquipment
call fcn.00405b90
mov ecx, esi
call fcn.00443640
mov ecx, ebp
sub esp, 8
shr ecx, 0x14
and ecx, 3
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, dword [ecx*4 + 0x6a1d80]
test edi, edi
mov dword [edx], edi
je 0x4b9b77
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b9b79
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.Indicator
call fcn.00405b90
mov ecx, esi
call fcn.00443640
mov edx, ebp
sub esp, 8
shr edx, 0x16
and edx, 3
mov dword [esp + 0x30], esp
mov edi, dword [edx*4 + 0x6a1d90]
mov edx, esp
test edi, edi
mov dword [edx], edi
je 0x4b9bc0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b9bc2
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.OtherPlayersOnRadar
call fcn.00405b90
mov ecx, esi
call fcn.00443640
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov ecx, ebp
mov byte [esp + 0x88], 0xa
shr ecx, 0x18
and ecx, 1
push ecx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.FriendIndicators
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
mov edx, ebp
sub esp, 8
shr edx, 0x19
and edx, 3
mov dword [esp + 0x30], esp
mov edi, dword [edx*4 + 0x6a1da0]
mov edx, esp
test edi, edi
mov dword [edx], edi
je 0x4b9c6e
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b9c70
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.FriendlyFire
call fcn.00405b90
mov ecx, esi
call fcn.00443640
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov ecx, ebp
mov byte [esp + 0x88], 0xb
shr ecx, 0x1b
and ecx, 3
lea ecx, [ecx + ecx*4]
push ecx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.FriendlyFirePenalty
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
sub esp, 8
lea ecx, [esp + 0x4c]
mov dword [esp + 0x30], esp
mov edi, esp
call fcn.00403f90
mov edx, ebp
mov byte [esp + 0x88], 0xc
shr edx, 0x1d
and edx, 1
push edx
push 0x6a2a8c
push eax
call fcn.004fda00
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add esp, 4
sub eax, ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.AutoTeamBalance
mov dword [edi + 4], eax
call fcn.00405b90
mov ecx, esi
call fcn.00443640
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 0
call fcn.00402ab0
mov edi, dword [esp + 0x1c]
sub esp, 8
mov eax, edi
mov edx, esp
and eax, 7
mov dword [esp + 0x30], esp
mov eax, dword [eax*4 + 0x6a1db0]
test eax, eax
mov dword [edx], eax
je 0x4b9d8b
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edi, dword [esp + 0x24]
not ecx
dec ecx
jmp 0x4b9d8d
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.VehicleRespawn
call fcn.00405b90
mov ecx, esi
call fcn.00443640
mov ecx, edi
sub esp, 8
shr ecx, 3
and ecx, 0xf
mov edx, esp
mov dword [esp + 0x30], esp
mov eax, dword [ecx*4 + 0x6a1dd0]
test eax, eax
mov dword [edx], eax
je 0x4b9dda
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edi, dword [esp + 0x24]
not ecx
dec ecx
jmp 0x4b9ddc
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.RedVehicleSet
call fcn.00405b90
mov ecx, esi
call fcn.00443640
shr edi, 7
and edi, 0xf
sub esp, 8
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, dword [edi*4 + 0x6a1dd0]
test edi, edi
mov dword [edx], edi
je 0x4b9e21
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b9e23
xor ecx, ecx
sub esp, 8
mov dword [edx + 4], ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.BlueVehicleSet
call fcn.00405b90
mov ecx, esi
call fcn.00443640
mov edx, ebp
and edx, 0x6000000
neg edx
sbb dl, dl
and edx, 0x64
mov byte [ebx + 0xd4], dl
lea ecx, [esp + 0x38]
mov dword [esp + 0x80], 0xffffffff
call fcn.00402ab0
mov ecx, dword [ebx + 0xf0]
push 0
or ecx, 0x20
sub esp, 8
mov dword [ebx + 0xf0], ecx
lea edi, [ebx + 0x6c]
mov ecx, esp
mov dword [esp + 0x34], esp
push str.numplayers
mov dword [esp + 0x2c], edi
lea ebp, [ebx + 0x28]
call fcn.00405b90
mov ecx, ebp
call fcn.00431f60
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], 0
test eax, eax
lea eax, [esp + 0x24]
jg 0x4b9eb6
lea eax, [esp + 0x28]
mov ax, word [eax]
test ax, ax
mov word [ebx + 0x84], ax
jne 0x4b9ee2
mov eax, dword [ebx + 0xf0]
lea ecx, [ebx + 0x40]
or al, 8
mov dword [ebx + 0xf0], eax
mov eax, dword [ecx + 4]
mov edx, dword [ecx]
push eax
push edx
call fcn.004333f0
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.maxplayers
call fcn.00405b90
mov ecx, ebp
call fcn.00431f60
test eax, eax
jl 0x4b9f09
cmp eax, 0x100
jl 0x4b9f0b
xor eax, eax
push 0
mov word [ebx + 0x86], ax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.reservedslots
call fcn.00405b90
mov ecx, ebp
call fcn.00431f60
sub esp, 0xc
mov word [ebx + 0x8a], ax
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mapname
call fcn.00405b90
lea eax, [esp + 0x58]
mov ecx, ebp
push eax
call fcn.0042fd10
lea ecx, [ebx + 0xbc]
mov dword [esp + 0x80], 0xd
cmp eax, ecx
je 0x4b9f88
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x12]
push esi
push edx
push eax
call fcn.0041cfd0
or esi, 0xffffffff
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], esi
call fcn.00402ab0
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.hostname
call fcn.00405b90
lea ecx, [esp + 0x58]
push ecx
mov ecx, ebp
call fcn.0042fd10
cmp eax, edi
mov dword [esp + 0x80], 0xe
je 0x4b9fea
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x12]
push edx
push ecx
push eax
mov ecx, edi
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], esi
call fcn.00402ab0
sub esp, 8
mov eax, str.hostname
mov edx, esp
mov dword [esp + 0x30], esp
test eax, eax
mov dword [edx], str.hostname
je 0x4ba022
or esi, 0xffffffff
mov edi, eax
mov ecx, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4ba027
xor ecx, ecx
or esi, 0xffffffff
mov dword [edx + 4], ecx
mov ecx, ebp
call fcn.004ae170
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.password
call fcn.00405b90
mov ecx, ebp
call fcn.00431ff0
sub esp, 0xc
mov byte [ebx + 0xc8], al
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.gamever
call fcn.00405b90
lea ecx, [esp + 0x58]
push ecx
mov ecx, ebp
call fcn.0042fd10
lea edi, [ebx + 0xb0]
mov dword [esp + 0x80], 0xf
cmp eax, edi
je 0x4ba0a8
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x12]
push edx
push ecx
push eax
mov ecx, edi
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], esi
call fcn.00402ab0
push 0x27
mov ecx, edi
call fcn.004fda20
push 0x27
mov ecx, edi
call fcn.004fdae0
mov eax, dword [edi + 4]
mov ecx, dword [edi]
sub eax, ecx
je 0x4ba124
mov al, byte [ecx]
cmp al, 0x56
je 0x4ba121
cmp al, 0x76
je 0x4ba121
push edi
lea ecx, [esp + 0x48]
push 0x76
push ecx
call fcn.00473b70
add esp, 0xc
cmp eax, edi
mov dword [esp + 0x80], 0x10
je 0x4ba10f
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x12]
push edx
push ecx
push eax
mov ecx, edi
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], esi
call fcn.00402ab0
jmp 0x4ba124
mov byte [ecx], 0x76
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.gametype
call fcn.00405b90
lea eax, [esp + 0x58]
mov ecx, ebp
push eax
call fcn.0042fd10
lea edi, [ebx + 0x98]
mov dword [esp + 0x80], 0x11
cmp eax, edi
je 0x4ba179
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x12]
push edx
push ecx
push eax
mov ecx, edi
call fcn.0041cfd0
lea ecx, [ebx + 0x8c]
cmp edi, ecx
je 0x4ba194
mov eax, dword [edi + 4]
mov edi, dword [edi]
lea edx, [esp + 0x11]
push edx
push eax
push edi
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], esi
call fcn.00402ab0
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.platform
call fcn.00405b90
lea eax, [esp + 0x4c]
mov ecx, ebp
push eax
call fcn.0042fd10
lea ecx, [esp + 0x38]
mov dword [esp + 0x80], 0x12
push ecx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.bf2_os
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
mov edi, 0x6a2b50
mov ecx, esi
xor eax, eax
mov edx, dword [esp + 0x3c]
repne scasb al, byte es:[edi]
mov esi, dword [esp + 0x38]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4ba226
mov edi, 0x6a2b50
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4ba294
mov esi, dword [esp + 0x38]
mov edi, str.win32
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jne 0x4ba248
mov edi, str.win32
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4ba294
mov esi, dword [esp + 0x38]
mov edi, str.linux
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jne 0x4ba26a
mov edi, str.linux
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4ba288
mov esi, dword [esp + 0x38]
mov edi, str.linux_64
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jne 0x4ba29e
mov edi, str.linux_64
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4ba29e
mov dword [ebx + 0xd0], 2
jmp 0x4ba29e
mov dword [ebx + 0xd0], 1
or esi, 0xffffffff
lea ecx, [esp + 0x38]
mov dword [esp + 0x80], esi
call fcn.00402ab0
mov eax, dword [ebx + 0xe8]
cmp eax, 9
jne 0x4ba324
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.gamename
call fcn.00405b90
lea eax, [esp + 0x58]
mov ecx, ebp
push eax
call fcn.0042fd10
lea ecx, [ebx + 0x98]
mov dword [esp + 0x80], 0x13
cmp eax, ecx
je 0x4ba30f
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea edi, [esp + 0x12]
push edi
push edx
push eax
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], esi
call fcn.00402ab0
jmp 0x4ba5c3
cmp eax, 0x10
jne 0x4ba458
lea ecx, [ebx + 0xa4]
lea esi, [ebx + 0x98]
cmp esi, ecx
je 0x4ba34e
mov eax, dword [esi + 4]
mov edx, dword [esi]
lea edi, [esp + 0x11]
push edi
push eax
push edx
call fcn.0041cfd0
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.gameId
call fcn.00405b90
lea ecx, [esp + 0x58]
push ecx
mov ecx, ebp
call fcn.0042fd10
lea edi, [ebx + 0x8c]
mov dword [esp + 0x80], 0x14
cmp eax, edi
je 0x4ba3a3
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x12]
push edx
push ecx
push eax
mov ecx, edi
call fcn.0041cfd0
cmp edi, esi
je 0x4ba3ba
mov eax, dword [edi + 4]
mov edi, dword [edi]
lea ecx, [esp + 0x11]
push ecx
push eax
push edi
mov ecx, esi
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], 0x15
call fcn.0041fc40
push esi
mov dword [esp + 0x84], 0xffffffff
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.Game_Id
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.active_mods
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
sub esp, 8
mov eax, str.BF1942
mov edx, esp
mov dword [esp + 0x30], esp
test eax, eax
mov dword [edx], str.BF1942
je 0x4ba435
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4ba437
xor ecx, ecx
mov dword [edx + 4], ecx
mov ecx, esi
call fcn.004fde20
test eax, eax
jne 0x4ba5c3
push 0xffffffffffffffff
push eax
mov ecx, esi
call fcn.00404540
jmp 0x4ba5c3
cmp eax, 0x23
jne 0x4ba58d
lea ecx, [ebx + 0xa4]
lea esi, [ebx + 0x98]
cmp esi, ecx
je 0x4ba482
mov eax, dword [esi + 4]
mov edx, dword [esi]
lea edi, [esp + 0x11]
push edi
push eax
push edx
call fcn.0041cfd0
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x34], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.game_id
call fcn.00405b90
lea ecx, [esp + 0x58]
push ecx
mov ecx, ebp
call fcn.0042fd10
lea edi, [ebx + 0x8c]
mov dword [esp + 0x80], 0x16
cmp eax, edi
je 0x4ba4d7
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x12]
push edx
push ecx
push eax
mov ecx, edi
call fcn.0041cfd0
cmp edi, esi
je 0x4ba4ee
mov eax, dword [edi + 4]
mov edi, dword [edi]
lea ecx, [esp + 0x11]
push ecx
push eax
push edi
mov ecx, esi
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], 0x17
call fcn.0041fc40
push esi
mov dword [esp + 0x84], 0xffffffff
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.game_id_name
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
sub esp, 8
mov eax, str.BFVietnam
mov edx, esp
mov dword [esp + 0x30], esp
test eax, eax
mov dword [edx], str.BFVietnam
je 0x4ba54e
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4ba550
xor ecx, ecx
mov dword [edx + 4], ecx
mov ecx, esi
call fcn.004fde20
test eax, eax
jne 0x4ba5c3
mov ecx, dword [esi]
mov eax, dword [esi + 4]
sub eax, ecx
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x28], eax
cmp eax, 0xffffffff
lea eax, [esp + 0x28]
jb 0x4ba57e
lea eax, [esp + 0x24]
mov edx, dword [eax]
add edx, ecx
push edx
push ecx
mov ecx, esi
call fcn.004045c0
jmp 0x4ba5c3
cmp eax, 0xb
je 0x4ba59c
cmp eax, 0x15
je 0x4ba59c
cmp eax, 0x1c
jne 0x4ba5c3
lea eax, [eax + eax*2]
or ecx, 0xffffffff
shl eax, 6
mov edx, dword [eax + 0x6a6b4c]
xor eax, eax
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, edx
push ecx
push edx
lea ecx, [ebx + 0x8c]
call fcn.00401aa0
lea ecx, [esp + 0x38]
call fcn.004047a0
lea ecx, [esp + 0x38]
mov dword [esp + 0x80], 0x18
push ecx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.friendlyfire
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
jne 0x4ba665
lea edx, [esp + 0x38]
push edx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.friendlyfire
call fcn.00405b90
mov ecx, dword [esp + 0x20]
call fcn.004dbb20
test al, al
jne 0x4ba665
lea eax, [esp + 0x38]
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.Soldier_Friendly_Fire
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
jne 0x4ba665
lea ecx, [esp + 0x38]
push ecx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.soldier_friendly_fire
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
je 0x4ba67e
mov edx, dword [esp + 0x3c]
cmp byte [edx - 1], 0x25
jne 0x4ba67e
lea ecx, [esp + 0x38]
call fcn.004fde70
mov byte [ebx + 0xd4], al
lea eax, [esp + 0x38]
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push 0x6a31c0
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
jne 0x4ba6e7
lea ecx, [esp + 0x38]
push ecx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push 0x6a31bc
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
jne 0x4ba6e7
lea edx, [esp + 0x38]
push edx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.bf2_friendlyfire
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
je 0x4ba6fd
lea ecx, [esp + 0x38]
call fcn.004fde70
neg eax
sbb al, al
and eax, 0x64
mov byte [ebx + 0xd4], al
lea ecx, [esp + 0x38]
mov dword [esp + 0x80], 0x19
call fcn.0041fc40
push 0
or esi, 0xffffffff
sub esp, 8
mov dword [esp + 0x8c], esi
mov ecx, esp
mov dword [esp + 0x34], esp
push str.sv_punkbuster
call fcn.00405b90
mov ecx, ebp
call fcn.00431ff0
test al, al
jne 0x4ba75f
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.bf2_anticheat
call fcn.00405b90
mov ecx, ebp
call fcn.00431ff0
test al, al
je 0x4ba83d
lea ecx, [esp + 0x54]
call fcn.004047a0
lea ecx, [esp + 0x60]
mov dword [esp + 0x80], 0x1a
call fcn.004047a0
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x1b
call fcn.00403f90
mov edi, 0x6a3194
mov ecx, esi
xor eax, eax
mov dword [esp + 0x80], 0x1c
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, 0x6a3194
push ecx
push 0x6a3194
lea ecx, [esp + 0x5c]
call fcn.00401aa0
mov eax, dword [ebx + 0xdc]
mov ecx, dword [ebx + 0xe0]
lea edi, [ebx + 0xd8]
cmp eax, ecx
mov dword [esp + 0x50], 1
je 0x4ba7f2
lea ecx, [esp + 0x50]
push ecx
push eax
call fcn.00445660
mov eax, dword [edi + 4]
add esp, 8
add eax, 0x28
mov dword [edi + 4], eax
jmp 0x4ba808
push 1
lea edx, [esp + 0x16]
push 1
lea ecx, [esp + 0x58]
push edx
push ecx
push eax
mov ecx, edi
call fcn.00445250
lea ecx, [esp + 0x6c]
mov dword [esp + 0x80], 0x1e
call fcn.004207d0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 0x1d
call fcn.00402ab0
lea ecx, [esp + 0x54]
mov dword [esp + 0x80], esi
call fcn.00402ab0
mov edx, dword [ebx + 0xf0]
lea edi, [ebx + 0x4c]
push edi
or dh, 2
sub esp, 8
mov dword [ebx + 0xf0], edx
mov ecx, esp
mov dword [esp + 0x34], esp
push str.time
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.timelimit
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.Time_Limit
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.timelimit
call fcn.00405b90
mov ecx, dword [esp + 0x20]
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.roundTime
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
test al, al
je 0x4ba8fd
cmp dword [edi], esi
jne 0x4ba8e6
mov dword [edi], 0
mov ecx, dword [edi]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [edi], edx
lea eax, [ebx + 0x50]
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.roundTimeRemain
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
lea esi, [ebx + 0x54]
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.frags
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.fraglimit
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
lea esi, [ebx + 0x5c]
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.rounds
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.roundlimit
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.Number_Of_Rounds
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.number_of_rounds
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
lea edi, [ebx + 0x64]
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.score
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.capturelimit
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.goalteamscore
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.goalscore
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.Score_Limit
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.goalscore
call fcn.00405b90
mov ecx, dword [esp + 0x20]
call fcn.004dbbd0
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.bf2_scorelimit
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
lea ecx, [esp + 0x12]
mov dword [esp + 0x80], 0x1f
push ecx
lea ecx, [esp + 0x30]
call fcn.00482bc0
push 8
mov byte [esp + 0x84], 0x21
call fcn.0050d330
lea edx, [eax + 8]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
add esp, 4
mov byte [eax], 0
mov eax, dword [ebx + 0xe8]
mov dword [esp + 0x80], 0x22
cmp eax, 0xf
jne 0x4babe5
lea eax, [esp + 0x2c]
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.current_round
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
je 0x4babe5
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x2c]
mov ecx, eax
sub ecx, edi
je 0x4babe5
mov dl, byte [esp + 0x12]
mov byte [esp + 0x28], 0x2f
mov byte [esp + 0x11], dl
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x11]
push ecx
push edx
push eax
push edi
call fcn.00492910
mov ecx, dword [esp + 0x40]
add esp, 0x10
cmp eax, ecx
je 0x4babe5
sub eax, dword [esp + 0x2c]
mov edi, eax
cmp edi, 0xffffffff
je 0x4babe5
lea eax, [edi + 1]
push 0xffffffffffffffff
lea ecx, [esp + 0x3c]
push eax
push ecx
lea ecx, [esp + 0x38]
call fcn.004820c0
mov ecx, eax
mov byte [esp + 0x80], 0x23
call fcn.004fde70
mov dword [esi], eax
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
sub edx, eax
lea ecx, [esp + 0x40]
push edx
push eax
mov byte [esp + 0x88], 0x24
call fcn.00402b70
lea eax, [esp + 0x38]
push edi
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x88], 0x22
call fcn.00482090
mov ecx, eax
mov byte [esp + 0x80], 0x25
call fcn.004fde70
mov ecx, dword [esi]
sub ecx, eax
mov dword [ebx + 0x60], ecx
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
sub edx, eax
lea ecx, [esp + 0x40]
push edx
push eax
mov byte [esp + 0x88], 0x26
call fcn.00402b70
mov byte [esp + 0x80], 0x22
lea eax, [esp + 0x2c]
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.mission_time
call fcn.00405b90
mov ecx, ebp
call fcn.004dbb20
test al, al
je 0x4bac18
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004bd710
add esp, 4
mov dword [ebx + 0x50], eax
lea esi, [ebx + 0x50]
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.timeleft
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
test al, al
je 0x4bac50
mov eax, dword [esi]
cmp eax, 0xffffffff
je 0x4bac50
test eax, eax
je 0x4bac50
lea eax, [eax + eax*2]
lea edx, [eax + eax*4]
shl edx, 2
mov dword [esi], edx
cmp dword [ebx + 0xe8], 0x2d
jne 0x4bae00
push 1
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.bf2_dedicated
call fcn.00405b90
mov ecx, ebp
call fcn.00431ff0
test al, al
je 0x4bac89
mov dword [ebx + 0xcc], 2
jmp 0x4bac93
mov dword [ebx + 0xcc], 1
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.bf2_ranked
call fcn.00405b90
mov ecx, ebp
call fcn.00431ff0
test al, al
je 0x4bae00
lea ecx, [esp + 0x54]
call fcn.004047a0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 0x27
call fcn.004047a0
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x28
call fcn.004047a0
mov edi, str.BF2_Ranking
or ecx, 0xffffffff
xor eax, eax
mov byte [esp + 0x80], 0x29
repne scasb al, byte es:[edi]
not ecx
mov eax, dword [esp + 0x58]
dec ecx
mov edi, ecx
mov ecx, dword [esp + 0x54]
add edi, str.BF2_Ranking
sub eax, ecx
mov esi, edi
sub esi, str.BF2_Ranking
cmp esi, eax
ja 0x4bad3d
push esi
push str.BF2_Ranking
push ecx
call fcn.004bf360
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
add esp, 0xc
add ecx, esi
push eax
push ecx
lea ecx, [esp + 0x5c]
call fcn.004045c0
jmp 0x4bad6b
push eax
push str.BF2_Ranking
push ecx
call fcn.004bf360
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x60]
add esp, 0xc
sub eax, ecx
lea edx, [esp + 0x12]
add eax, str.BF2_Ranking
push edx
push edi
push eax
lea ecx, [esp + 0x60]
call fcn.004c2490
mov eax, dword [ebx + 0xdc]
mov ecx, dword [ebx + 0xe0]
lea esi, [ebx + 0xd8]
cmp eax, ecx
mov dword [esp + 0x50], 2
je 0x4badaf
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], eax
test eax, eax
mov byte [esp + 0x80], 0x2a
je 0x4bada9
lea ecx, [esp + 0x50]
push ecx
mov ecx, eax
call fcn.00492690
add dword [esi + 4], 0x28
jmp 0x4badc5
push 1
lea edx, [esp + 0x16]
push 1
lea ecx, [esp + 0x58]
push edx
push ecx
push eax
mov ecx, esi
call fcn.00445250
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x2c
call fcn.00402ab0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 0x2b
call fcn.00402ab0
lea edx, [esp + 0x54]
mov dword [esp + 0x28], edx
lea ecx, [esp + 0x54]
mov byte [esp + 0x80], 0x2d
call fcn.0041fc40
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
sub ecx, eax
mov dword [esp + 0x80], 0x2e
push ecx
push eax
lea ecx, [esp + 0x3c]
call fcn.00402b70
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x80], 0xffffffff
mov eax, dword [ebx + 0xf0]
test al, 0xa
je 0x4bafac
lea edx, [esp + 0x28]
mov dword [esp + 0x18], 0
push edx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.minplayers
call fcn.00405b90
mov ecx, dword [esp + 0x20]
call fcn.004dbbd0
test al, al
je 0x4baea8
mov eax, dword [esp + 0x28]
xor ecx, ecx
mov cx, word [ebp + 0x18]
cmp eax, ecx
jl 0x4baea8
mov edx, dword [edi + 4]
mov eax, dword [edi]
sub edx, eax
mov eax, 0x5397829d
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
sub ecx, edx
mov dword [esp + 0x18], ecx
jns 0x4baea8
mov dword [esp + 0x18], 0
lea ecx, [esp + 0x18]
push ecx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x30], esp
push str.bf2_bots
call fcn.00405b90
lea ecx, [ebx + 0x28]
call fcn.004dbbd0
mov eax, dword [esp + 0x18]
xor edx, edx
mov dx, word [ebp + 0x1c]
cmp eax, edx
je 0x4bafac
mov eax, dword [ebx + 0xf0]
test al, 0x20
jne 0x4bafa0
lea esi, [ebx + 0x6c]
or al, 0x20
push ebp
mov ecx, esi
mov dword [ebx + 0xf0], eax
call fcn.004044c0
lea eax, [ebp + 0xc]
lea ecx, [esi + 0xc]
push eax
call fcn.004335b0
mov cx, word [ebp + 0x18]
lea edi, [ebp + 0x20]
mov word [esi + 0x18], cx
mov dx, word [ebp + 0x1a]
mov word [esi + 0x1a], dx
mov ax, word [ebp + 0x1c]
mov word [esi + 0x1c], ax
mov cx, word [ebp + 0x1e]
mov word [esi + 0x1e], cx
lea ecx, [esi + 0x20]
push edi
call fcn.004044c0
add edi, 0xc
lea ecx, [esi + 0x2c]
push edi
call fcn.004044c0
lea edx, [ebp + 0x38]
lea ecx, [esi + 0x38]
push edx
call fcn.004044c0
lea eax, [ebp + 0x44]
lea ecx, [esi + 0x44]
push eax
call fcn.004044c0
lea eax, [ebp + 0x50]
lea ecx, [esi + 0x50]
cmp eax, ecx
je 0x4baf72
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea edi, [esp + 0x11]
push edi
push edx
push eax
call fcn.0041cfd0
mov cl, byte [ebp + 0x5c]
add ebp, 0x6c
mov byte [esi + 0x5c], cl
mov edx, dword [ebp - 0xc]
mov dword [esi + 0x60], edx
mov eax, dword [ebp - 8]
mov dword [esi + 0x64], eax
mov cl, byte [ebp - 4]
mov byte [esi + 0x68], cl
lea ecx, [esi + 0x6c]
push ebp
call fcn.00433910
mov ebp, esi
mov esi, dword [esp + 0x20]
mov dword [esp + 0x1c], ebp
mov dx, word [esp + 0x18]
mov word [ebx + 0x88], dx
test byte [ebx + 0xf0], 8
je 0x4bb4d0
cmp esi, 0x10
jne 0x4bb086
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
sub ecx, eax
mov eax, 0x5397829d
imul ecx
sar edx, 6
mov eax, edx
xor ecx, ecx
mov cx, word [ebp + 0x18]
shr eax, 0x1f
add edx, eax
cmp edx, ecx
jle 0x4bb544
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
sub ecx, eax
mov eax, 0x5397829d
imul ecx
sar edx, 6
mov eax, edx
mov esi, dword [ebx + 0x44]
shr eax, 0x1f
add edx, eax
lea ecx, [edx + edx*2]
shl ecx, 4
add ecx, edx
mov edx, dword [ebx + 0x40]
lea eax, [edx + ecx*4 - 0xc4]
lea edi, [eax + 0xc4]
cmp edi, esi
je 0x4bb03b
mov cl, byte [esp + 0x12]
lea edx, [esp + 0x11]
push 0
push edx
push eax
push esi
push edi
mov byte [esp + 0x25], cl
call fcn.00437580
add esp, 0x14
mov ecx, dword [ebx + 0x44]
add ecx, 0xffffff3c
mov dword [ebx + 0x44], ecx
call fcn.00429a40
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
sub ecx, eax
mov eax, 0x5397829d
imul ecx
sar edx, 6
mov eax, edx
xor ecx, ecx
mov cx, word [ebp + 0x18]
shr eax, 0x1f
add edx, eax
cmp edx, ecx
jg 0x4bafe9
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
cmp esi, 0x1e
jne 0x4bb2a3
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
sub ecx, eax
mov eax, 0x5397829d
imul ecx
sar edx, 6
mov eax, edx
xor esi, esi
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x1c], esi
test edx, edx
jle 0x4bb544
mov dword [esp + 0x20], esi
mov ecx, dword [ebx + 0x40]
mov edx, dword [esp + 0x20]
mov edi, 0x69bcd0
xor eax, eax
lea ebp, [edx + ecx + 0x64]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4bb18c
mov edi, 0x69bcd0
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bb18c
mov edi, 0x6980fc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
mov edi, dword [ebp]
dec ecx
mov edx, ecx
mov ecx, dword [ebp + 4]
add edx, 0x6980fc
sub ecx, edi
mov eax, edx
sub eax, 0x6980fc
cmp eax, ecx
ja 0x4bb14c
test eax, eax
je 0x4bb136
mov ecx, eax
mov esi, 0x6980fc
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edx, dword [ebp]
mov ecx, dword [ebp + 4]
add eax, edx
push ecx
push eax
mov ecx, ebp
call fcn.004045c0
jmp 0x4bb258
test ecx, ecx
je 0x4bb163
mov eax, ecx
mov esi, 0x6980fc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov cl, byte [esp + 0x12]
mov esi, dword [ebp]
mov byte [esp + 0x11], cl
mov ecx, dword [ebp + 4]
lea eax, [esp + 0x11]
sub ecx, esi
push eax
add ecx, 0x6980fc
push edx
push ecx
mov ecx, ebp
call fcn.00401b50
jmp 0x4bb258
mov edi, 0x698144
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov edx, dword [ebp + 4]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4bb258
mov edi, 0x698144
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bb258
mov edi, str.Blue
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
mov edi, dword [ebp]
dec ecx
mov edx, ecx
mov ecx, dword [ebp + 4]
add edx, str.Blue
sub ecx, edi
mov eax, edx
sub eax, str.Blue
cmp eax, ecx
ja 0x4bb225
test eax, eax
je 0x4bb1fb
mov ecx, eax
mov esi, str.Blue
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp]
mov esi, dword [ebp + 4]
add eax, ecx
mov edi, eax
cmp edi, esi
je 0x4bb258
mov eax, esi
sub eax, esi
inc eax
push eax
push esi
push edi
call fcn.004333c0
mov eax, dword [ebp + 4]
sub edi, esi
add esp, 0xc
add eax, edi
mov dword [ebp + 4], eax
jmp 0x4bb258
test ecx, ecx
je 0x4bb23c
mov eax, ecx
mov esi, str.Blue
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebp]
lea ecx, [esp + 0x13]
push ecx
push edx
mov edx, dword [ebp + 4]
mov ecx, ebp
sub edx, esi
add edx, str.Blue
push edx
call fcn.004c2490
mov ecx, dword [esp + 0x20]
mov eax, dword [ebx + 0x40]
add ecx, 0xc4
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [ebx + 0x44]
sub ecx, eax
mov eax, 0x5397829d
imul ecx
sar edx, 6
mov eax, edx
inc esi
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x1c], esi
cmp esi, edx
jl 0x4bb0ba
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
cmp esi, 5
jne 0x4bb4d0
mov edx, dword [esp + 0x1c]
lea ecx, [esp + 0x38]
push 2
push ecx
lea ecx, [edx + 0x20]
call fcn.00482090
mov edx, eax
mov edi, 0x6a30a4
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov esi, dword [edx]
mov eax, dword [edx + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4bb2eb
mov edi, 0x6a30a4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
mov byte [esp + 0x11], 1
je 0x4bb2f0
mov byte [esp + 0x11], 0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
sub eax, ecx
mov dword [esp + 0x80], 0x2f
test ecx, ecx
je 0x4bb325
cmp eax, 0x80
jbe 0x4bb31b
push ecx
call fcn.005dd7a4
add esp, 4
jmp 0x4bb325
push eax
push ecx
call fcn.0050d4e0
add esp, 8
mov al, byte [esp + 0x11]
mov dword [esp + 0x80], 0xffffffff
test al, al
je 0x4bb544
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
lea ebp, [ebx + 0x40]
sub ecx, eax
mov eax, 0x5397829d
xor esi, esi
imul ecx
sar edx, 6
mov eax, edx
mov dword [esp + 0x20], esi
shr eax, 0x1f
add edx, eax
test edx, edx
jle 0x4bb544
xor ebx, ebx
mov dword [esp + 0x1c], ebx
mov ecx, dword [ebp]
mov edi, 0x69bcd0
xor eax, eax
lea ebx, [ebx + ecx + 0x64]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
not ecx
dec ecx
sub edx, eax
cmp edx, ecx
jne 0x4bb451
mov esi, eax
mov edi, 0x69bcd0
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bb44d
mov edi, str.Terrorists
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
mov edi, dword [ebx]
dec ecx
mov edx, ecx
mov ecx, dword [ebx + 4]
add edx, str.Terrorists
sub ecx, edi
mov eax, edx
sub eax, str.Terrorists
cmp eax, ecx
ja 0x4bb411
test eax, eax
je 0x4bb3e2
mov ecx, eax
mov esi, str.Terrorists
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
add eax, ecx
mov esi, eax
cmp esi, edi
je 0x4bb485
mov eax, edi
sub eax, edi
inc eax
je 0x4bb405
push eax
push edi
push esi
call fcn.00510210
add esp, 0xc
mov eax, dword [ebx + 4]
sub esi, edi
add eax, esi
mov dword [ebx + 4], eax
jmp 0x4bb485
test ecx, ecx
je 0x4bb428
mov eax, ecx
mov esi, str.Terrorists
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov cl, byte [esp + 0x13]
mov esi, dword [ebx]
mov byte [esp + 0x12], cl
mov ecx, dword [ebx + 4]
lea eax, [esp + 0x12]
sub ecx, esi
push eax
add ecx, str.Terrorists
push edx
push ecx
mov ecx, ebx
call fcn.00401b50
jmp 0x4bb485
mov esi, dword [esp + 0x20]
push 0x698144
push esi
mov ecx, ebp
call fcn.004dc7b0
add eax, 0x64
push eax
call fcn.004bb560
add esp, 8
test al, al
je 0x4bb485
push str.Special_Forces
push esi
mov ecx, ebp
call fcn.004dc7b0
mov ecx, eax
add ecx, 0x64
call fcn.00498210
mov ecx, dword [ebp + 4]
mov edx, dword [ebp]
sub ecx, edx
mov eax, 0x5397829d
imul ecx
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
sar edx, 6
mov eax, edx
inc esi
shr eax, 0x1f
add edx, eax
add ebx, 0xc4
cmp esi, edx
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], ebx
jl 0x4bb36c
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
cmp esi, 0xe
je 0x4bb4da
cmp esi, 0x21
jne 0x4bb4e1
mov ecx, ebx
call 0x4bb5c0
cmp esi, 0x25
jne 0x4bb544
test byte [ebx + 0xf0], 0x20
je 0x4bb4ff
lea ecx, [ebx + 0x78]
lea edx, [ebx + 0x6c]
push ecx
push edx
call fcn.004be0e0
add esp, 8
test byte [ebx + 0xf0], 8
je 0x4bb544
add ebx, 0x40
xor esi, esi
mov ecx, ebx
call fcn.004bb5a0
test eax, eax
jle 0x4bb544
push esi
mov ecx, ebx
call fcn.004dc7b0
add eax, 0x20
mov ecx, ebx
push eax
push esi
call fcn.004dc7b0
add eax, 0x14
push eax
call fcn.004be0e0
add esp, 8
mov ecx, ebx
inc esi
call fcn.004bb5a0
cmp esi, eax
jl 0x4bb518
mov ecx, dword [esp + 0x78]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x74
ret
push 0xffffffffffffffff
push 0x617ed1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov dword [esp + 0x1c], ebp
mov ecx, dword [ebp + 0xf0]
lea edx, [ebp + 0x28]
mov eax, ecx
and eax, 4
jne 0x4bb5f5
mov edx, dword [ebp + 0x10]
test eax, eax
mov dword [esp + 0x20], edx
je 0x4bb606
lea eax, [ebp + 0x34]
mov dword [esp + 0x14], eax
jmp 0x4bb60d
mov edx, dword [ebp + 0x14]
mov dword [esp + 0x14], edx
test ch, 1
je 0x4bb61e
mov eax, dword [ebp + 0xe8]
mov dword [esp + 0x2c], eax
jmp 0x4bb625
mov edx, dword [ebp + 0x24]
mov dword [esp + 0x2c], edx
test cl, 0x20
je 0x4bb70b
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x40], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x48], esp
push str.servermode
call fcn.00405b90
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0x58]
push eax
call fcn.0042fd10
mov edi, str.dedicated
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x48]
repne scasb al, byte es:[edi]
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x80], 0
not ecx
dec ecx
sub edx, ebx
cmp edx, ecx
jne 0x4bb69e
mov edi, str.dedicated
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bb69e
mov dword [ebp + 0xcc], 2
jmp 0x4bb6d4
mov edi, str.listen
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jne 0x4bb6ca
mov edi, str.listen
mov esi, ebx
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bb6ca
mov dword [ebp + 0xcc], 1
jmp 0x4bb6d4
mov dword [ebp + 0xcc], 0
lea eax, [ebp + 0xc8]
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x40], esp
push str.password
call fcn.00405b90
mov ecx, dword [esp + 0x20]
call fcn.004dbd00
lea ecx, [esp + 0x44]
mov dword [esp + 0x80], 0xffffffff
call fcn.00402ab0
test byte [ebp + 0xf0], 0x20
je 0x4bbb02
lea ecx, [esp + 0x38]
call fcn.004047a0
lea ecx, [esp + 0x38]
mov dword [esp + 0x80], 1
push ecx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x40], esp
push str.gamespeed
call fcn.00405b90
lea ecx, [ebp + 0x28]
call fcn.004dbb20
test al, al
je 0x4bb80e
lea ecx, [esp + 0x54]
call fcn.004047a0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 2
call fcn.00403f90
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 3
call fcn.00403f90
mov edi, str.Game_Speed
or ecx, 0xffffffff
xor eax, eax
mov byte [esp + 0x80], 4
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.Game_Speed
push ecx
push str.Game_Speed
lea ecx, [esp + 0x5c]
call fcn.00401aa0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
lea edx, [esp + 0x12]
push edx
push eax
push ecx
lea ecx, [esp + 0x6c]
call fcn.0041cfd0
lea edx, [esp + 0x50]
lea ecx, [ebp + 0xd8]
push edx
mov dword [esp + 0x54], 0
call fcn.00445200
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 6
call fcn.004207d0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 5
call fcn.004207d0
lea ecx, [esp + 0x54]
mov byte [esp + 0x80], 1
call fcn.00402ab0
xor eax, eax
mov dword [esp + 0x30], eax
test eax, eax
jne 0x4bb822
mov eax, dword [esp + 0x20]
mov dword [esp + 0x24], eax
jmp 0x4bb82a
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], 0xffffffff
mov edx, dword [esp + 0x28]
inc edx
push edx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x40], esp
push str.Mutator
call fcn.00405b90
mov edi, dword [esp + 0x30]
mov ecx, edi
call fcn.004dba60
mov esi, eax
cmp esi, 0xffffffff
mov dword [esp + 0x28], esi
je 0x4bbad0
lea ecx, [esp + 0x54]
call fcn.004047a0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 7
call fcn.00403f90
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 8
call fcn.00403f90
mov eax, dword [edi]
lea ecx, [esi + esi*2]
mov byte [esp + 0x80], 9
lea edx, [eax + ecx*8 + 0xc]
lea ecx, [esp + 0x44]
push edx
call fcn.00420b60
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x12]
mov byte [esp + 0x80], 0xa
push eax
push ecx
push edx
lea ecx, [esp + 0x60]
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov byte [esp + 0x80], 9
call fcn.00402ab0
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x50], 0
lea eax, [eax + eax*2]
shl eax, 6
mov edx, dword [eax + 0x6a6bd4]
lea ebx, [eax + 0x6a6bd4]
test edx, edx
je 0x4bb96a
mov eax, dword [edx + 4]
test eax, eax
je 0x4bb96a
mov eax, edx
xor ebp, ebp
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x4bb958
mov esi, dword [edx + ebp + 0xc]
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x58]
mov edi, dword [esp + 0x54]
not ecx
dec ecx
sub eax, edi
cmp ecx, eax
jne 0x4bb958
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bb958
mov edx, dword [edx + ebp + 4]
or ecx, 0xffffffff
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, edx
push ecx
push edx
lea ecx, [esp + 0x5c]
call fcn.00401aa0
mov edx, dword [ebx]
mov ecx, dword [edx + ebp]
mov dword [esp + 0x50], ecx
add ebp, 0x10
mov ecx, dword [edx + ebp + 4]
lea eax, [edx + ebp]
test ecx, ecx
jne 0x4bb909
mov ebp, dword [esp + 0x1c]
mov ecx, dword [ebp + 0xdc]
mov ebx, dword [ebp + 0xd8]
add ebp, 0xd8
sub ecx, ebx
mov eax, 0x66666667
mov dword [esp + 0x18], 0
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
je 0x4bb9f3
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
sub edx, eax
xor ebx, ebx
mov dword [esp + 0x34], edx
jmp 0x4bb9af
mov edx, dword [esp + 0x34]
mov eax, dword [ebp]
mov esi, dword [eax + ebx + 4]
mov ecx, dword [eax + ebx + 8]
sub ecx, esi
cmp ecx, edx
jne 0x4bb9ca
mov edi, dword [esp + 0x54]
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x4bb9f3
mov ecx, dword [ebp + 4]
mov edx, dword [ebp]
sub ecx, edx
mov eax, 0x66666667
imul ecx
mov esi, dword [esp + 0x18]
add ebx, 0x28
sar edx, 4
mov eax, edx
inc esi
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x18], esi
cmp esi, edx
jb 0x4bb9ab
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
sub ecx, eax
mov eax, 0x66666667
imul ecx
mov eax, dword [esp + 0x18]
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
cmp eax, edx
je 0x4bba50
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0xc
call fcn.00402ab0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 0xb
call fcn.00402ab0
lea ecx, [esp + 0x54]
mov byte [esp + 0x80], 1
call fcn.00402ab0
mov ebp, dword [esp + 0x1c]
jmp 0x4bb832
mov ecx, dword [ebp + 4]
mov eax, dword [ebp + 8]
cmp ecx, eax
je 0x4bba7e
mov dword [esp + 0x34], ecx
mov dword [esp + 0x18], ecx
test ecx, ecx
mov byte [esp + 0x80], 0xd
je 0x4bba78
lea edx, [esp + 0x50]
push edx
call fcn.00492690
add dword [ebp + 4], 0x28
jmp 0x4bba94
push 1
lea eax, [esp + 0x17]
push 1
lea edx, [esp + 0x58]
push eax
push edx
push ecx
mov ecx, ebp
call fcn.00445250
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0xf
call fcn.004207d0
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 0xe
call fcn.00402ab0
lea ecx, [esp + 0x54]
mov byte [esp + 0x80], 1
call fcn.00402ab0
mov ebp, dword [esp + 0x1c]
jmp 0x4bb832
mov eax, dword [esp + 0x30]
inc eax
cmp eax, 2
mov dword [esp + 0x30], eax
jl 0x4bb814
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
sub ecx, eax
mov dword [esp + 0x80], 0x10
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.00402b70
mov ecx, dword [esp + 0x78]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x74
ret
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x618003
push eax
mov dword fs:[0], esp
sub esp, 0x70
push ebx
mov ebx, ecx
push ebp
push esi
mov eax, dword [ebx + 0xf0]
push edi
test al, 0x20
lea ebp, [ebx + 0x6c]
jne 0x4bbb4e
mov ebp, dword [ebx + 0x20]
mov ecx, eax
lea edi, [ebx + 0x28]
and ecx, 2
jne 0x4bbb5b
mov edi, dword [ebx + 0x10]
test al, 4
mov dword [esp + 0x18], edi
lea edx, [ebx + 0x34]
jne 0x4bbb69
mov edx, dword [ebx + 0x14]
test ah, 1
mov dword [esp + 0x1c], edx
je 0x4bbb7a
mov edx, dword [ebx + 0xe8]
jmp 0x4bbb7d
mov edx, dword [ebx + 0x24]
test ecx, ecx
mov dword [esp + 0x28], edx
je 0x4bbd22
push 0
or ah, 2
sub esp, 8
mov dword [ebx + 0xf0], eax
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mp_timelimit
call fcn.00405b90
mov ecx, edi
call fcn.00431f60
test eax, eax
mov dword [ebx + 0x4c], eax
je 0x4bbca6
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x3c], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x44], esp
push str.cm_timeleft
call fcn.00405b90
lea eax, [esp + 0x60]
mov ecx, edi
push eax
call fcn.0042fd10
mov eax, dword [eax]
mov dword [esp + 0x88], 0
push eax
lea esi, [ebx + 0x50]
call fcn.004bd710
add esp, 4
lea ecx, [esp + 0x4c]
mov dword [esi], eax
mov dword [esp + 0x88], 0xffffffff
call fcn.00402ab0
cmp dword [esi], 0xffffffff
jne 0x4bbca6
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x3c], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x44], esp
push str.amx_timeleft
call fcn.00405b90
lea ecx, [esp + 0x60]
push ecx
mov ecx, edi
call fcn.0042fd10
mov eax, dword [eax]
mov dword [esp + 0x88], 1
push eax
call fcn.004bd710
add esp, 4
lea ecx, [esp + 0x4c]
mov dword [esi], eax
mov dword [esp + 0x88], 0xffffffff
call fcn.00402ab0
cmp dword [esi], 0xffffffff
jne 0x4bbca6
push esi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mp_timeleft
call fcn.00405b90
mov ecx, edi
call fcn.004dbbd0
test al, al
je 0x4bbca6
cmp dword [esi], 0
jge 0x4bbca6
mov dword [esi], 0
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mp_maxrounds
call fcn.00405b90
mov ecx, edi
call fcn.00431f60
push 0
mov dword [ebx + 0x5c], eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mp_winlimit
call fcn.00405b90
mov ecx, edi
call fcn.00431f60
push 0
mov dword [ebx + 0x64], eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mp_fraglimit
call fcn.00405b90
mov ecx, edi
call fcn.00431f60
push 0
mov dword [ebx + 0x54], eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mp_fragsleft
call fcn.00405b90
mov ecx, edi
call fcn.00431f60
mov dword [ebx + 0x58], eax
mov ecx, dword [ebx + 0xf0]
mov edx, dword [esp + 0x28]
mov eax, ecx
shr eax, 5
and al, 1
cmp edx, 1
mov byte [esp + 0x13], al
jne 0x4bc144
test cl, 0x22
je 0x4bc144
lea ecx, [esp + 0x34]
call fcn.004047a0
sub esp, 0xc
mov dword [esp + 0x94], 2
mov ecx, esp
mov dword [esp + 0x3c], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x44], esp
push str.protocol
call fcn.00405b90
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x60]
push edx
call fcn.0042fd10
mov ecx, eax
mov byte [esp + 0x88], 3
call fcn.004fde70
lea ecx, [esp + 0x4c]
mov esi, eax
mov byte [esp + 0x88], 2
call fcn.00402ab0
test esi, esi
jne 0x4bbddb
mov edi, 0x69b9e4
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, 0x69b9e4
push ecx
push 0x69b9e4
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
cmp esi, 0x2d
jne 0x4bbe09
mov edi, str.v1.1.0.8_9
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.v1.1.0.8_9
push ecx
push str.v1.1.0.8_9
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
cmp esi, 0x2e
jne 0x4bbfab
mov ecx, dword [edi + 4]
mov edx, dword [edi]
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
jne 0x4bbe55
mov edi, str.v1.1.1.0_1
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.v1.1.1.0_1
push ecx
push str.v1.1.1.0_1
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.max_queries_sec
call fcn.00405b90
mov ecx, edi
call fcn.004dba60
cmp eax, 0xffffffff
jne 0x4bbe9e
or ecx, eax
mov edi, str.v1.1.1.0
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.v1.1.1.0
push ecx
push str.v1.1.1.0
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.botcount
call fcn.00405b90
mov ecx, dword [esp + 0x28]
call fcn.004dba60
cmp eax, 0xffffffff
jne 0x4bbee9
or ecx, eax
mov edi, str.v1.1.1.1
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.v1.1.1.1
push ecx
push str.v1.1.1.1
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
mov edi, str.CounterStrike
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp + 0x2c]
repne scasb al, byte es:[edi]
mov edx, dword [ebp + 0x30]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4bbf36
mov edi, str.CounterStrike
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bbf36
mov edi, str.v1.1.1.1d
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.v1.1.1.1d
push ecx
push str.v1.1.1.1d
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
mov edi, str.Counter_Strike
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp + 0x2c]
repne scasb al, byte es:[edi]
mov edx, dword [ebp + 0x30]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4bbf85
mov edi, str.Counter_Strike
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bbf85
mov edi, str.v1.1.2.0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.v1.1.2.0
push ecx
push str.v1.1.2.0
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
mov edi, str.v1.1.1.1d_2.0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, str.v1.1.1.1d_2.0
push ecx
push str.v1.1.1.1d_2.0
lea ecx, [esp + 0x3c]
call fcn.00401aa0
jmp 0x4bc00a
cmp esi, 0x2f
je 0x4bbf5c
lea ecx, [esp + 0x4c]
call fcn.004047a0
push esi
lea ecx, [esp + 0x50]
push str.Protocol__d
push ecx
mov byte [esp + 0x94], 4
call fcn.004fda00
lea edx, [esp + 0x40]
add esp, 0xc
cmp eax, edx
je 0x4bbff1
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x14]
push edx
push ecx
push eax
lea ecx, [esp + 0x40]
call fcn.0041cfd0
lea ecx, [esp + 0x4c]
mov byte [esp + 0x88], 5
call fcn.0041fc40
mov byte [esp + 0x88], 2
mov eax, dword [ebx + 0xf0]
test al, 0x20
je 0x4bc03a
lea ecx, [ebx + 0xb0]
lea eax, [esp + 0x34]
cmp eax, ecx
je 0x4bc11d
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x14]
push edx
mov edx, dword [esp + 0x38]
push eax
push edx
jmp 0x4bc118
mov edi, dword [ebp + 0x44]
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov edx, dword [ebp + 0x48]
sub ecx, esi
sub edx, edi
cmp ecx, edx
jne 0x4bc05a
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x4bc11d
lea esi, [ebx + 0x6c]
or al, 0x20
push ebp
mov ecx, esi
mov dword [ebx + 0xf0], eax
call fcn.004044c0
lea eax, [ebp + 0xc]
lea ecx, [esi + 0xc]
push eax
call fcn.004335b0
mov cx, word [ebp + 0x18]
lea edi, [ebp + 0x20]
mov word [esi + 0x18], cx
mov dx, word [ebp + 0x1a]
mov word [esi + 0x1a], dx
mov ax, word [ebp + 0x1c]
mov word [esi + 0x1c], ax
mov cx, word [ebp + 0x1e]
mov word [esi + 0x1e], cx
lea ecx, [esi + 0x20]
push edi
call fcn.004044c0
add edi, 0xc
lea ecx, [esi + 0x2c]
push edi
call fcn.004044c0
lea edx, [ebp + 0x38]
lea ecx, [esi + 0x38]
push edx
call fcn.004044c0
lea eax, [ebp + 0x44]
lea ecx, [esi + 0x44]
push eax
call fcn.004044c0
lea eax, [ebp + 0x50]
lea ecx, [esi + 0x50]
push eax
call fcn.004044c0
mov cl, byte [ebp + 0x5c]
add ebp, 0x6c
mov byte [esi + 0x5c], cl
mov edx, dword [ebp - 0xc]
mov dword [esi + 0x60], edx
mov eax, dword [ebp - 8]
mov dword [esi + 0x64], eax
mov cl, byte [ebp - 4]
mov byte [esi + 0x68], cl
push ebp
lea ecx, [esi + 0x6c]
call fcn.00444cd0
lea ecx, [ebx + 0xb0]
lea edx, [esp + 0x34]
cmp edx, ecx
mov ebp, esi
je 0x4bc11d
mov edx, dword [esp + 0x38]
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0x38]
push edx
push eax
call fcn.0041cfd0
lea ecx, [esp + 0x34]
mov dword [esp + 0x88], 6
call fcn.0041fc40
mov edi, dword [esp + 0x18]
mov al, byte [esp + 0x13]
mov dword [esp + 0x88], 0xffffffff
test al, al
je 0x4bc9ff
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.reserve_type
call fcn.00405b90
mov ecx, edi
call fcn.00431f60
cmp eax, 1
jne 0x4bc173
mov dword [esp + 0x20], eax
jmp 0x4bc193
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.reserve_slots
call fcn.00405b90
mov ecx, edi
call fcn.00431f60
mov dword [esp + 0x20], eax
mov edi, str.v1.1.1.1
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebx + 0xb0]
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0xb4]
not ecx
dec ecx
sub eax, esi
mov edx, ecx
mov dword [esp + 0x2c], eax
cmp edx, eax
mov dword [esp + 0x30], edx
lea eax, [esp + 0x30]
jl 0x4bc1c6
lea eax, [esp + 0x2c]
mov ecx, dword [eax]
mov edi, str.v1.1.1.1
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4bc1d8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4bc1eb
mov esi, dword [esp + 0x2c]
cmp esi, edx
jl 0x4bc1ed
cmp esi, edx
setg al
test eax, eax
jge 0x4bc1ff
mov cx, word [esp + 0x20]
mov esi, dword [esp + 0x18]
add word [ebx + 0x8a], cx
jmp 0x4bc25b
lea edx, [esp + 0x30]
push edx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.ami_sv_maxplayers
call fcn.00405b90
mov esi, dword [esp + 0x24]
mov ecx, esi
call fcn.004dbbd0
test al, al
je 0x4bc25b
mov bp, word [ebp + 0x1a]
mov ecx, dword [esp + 0x30]
mov eax, ebp
and eax, 0xffff
cmp ecx, eax
jne 0x4bc247
mov ax, word [esp + 0x20]
add word [ebx + 0x8a], ax
jmp 0x4bc25b
jle 0x4bc25b
mov edx, ecx
mov word [ebx + 0x86], cx
sub edx, ebp
mov word [ebx + 0x8a], dx
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.amx_real_res_slots
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
mov ebp, eax
test ebp, ebp
jge 0x4bc2bb
mov edi, str.v1.1.1.1
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebx + 0xb0]
neg ebp
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0xb4]
not ecx
dec ecx
lea ecx, [ecx + str.v1.1.1.1]
push ecx
push str.v1.1.1.1
push eax
push edx
call fcn.00473f50
add esp, 0x10
test eax, eax
jl 0x4bc2bb
add word [ebx + 0x86], bp
add word [ebx + 0x8a], bp
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.cm_real_reservedslots
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
mov ebp, eax
test ebp, ebp
jge 0x4bc322
mov edi, str.v1.1.1.1
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebx + 0xb0]
neg ebp
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0xb4]
not ecx
dec ecx
lea ecx, [ecx + str.v1.1.1.1]
push ecx
push str.v1.1.1.1
push eax
push edx
call fcn.00473f50
add esp, 0x10
test eax, eax
jl 0x4bc322
add word [ebx + 0x86], bp
add word [ebx + 0x8a], bp
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mani_reserve_slots
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
test eax, eax
jge 0x4bc34b
neg eax
add word [ebx + 0x8a], ax
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.reservedslot
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
test eax, eax
jge 0x4bc374
neg eax
add word [ebx + 0x8a], ax
push 0xffffffffffffffff
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.mp_friendlyfire
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
cmp al, 0xff
mov byte [ebx + 0xd4], al
je 0x4bc3ae
neg al
sbb al, al
and eax, 0x64
mov byte [ebx + 0xd4], al
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.secure
call fcn.00405b90
mov ebp, dword [esp + 0x28]
mov ecx, ebp
call fcn.00431ff0
test al, al
je 0x4bc4b9
lea ecx, [esp + 0x5c]
call fcn.004047a0
lea ecx, [esp + 0x68]
mov dword [esp + 0x88], 7
call fcn.004047a0
lea ecx, [esp + 0x74]
mov byte [esp + 0x88], 8
call fcn.00403f90
mov edi, 0x6a33ac
or ecx, 0xffffffff
xor eax, eax
mov dword [esp + 0x88], 9
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, 0x6a33ac
push ecx
push 0x6a33ac
lea ecx, [esp + 0x64]
call fcn.00401aa0
mov eax, dword [ebx + 0xdc]
mov ecx, dword [ebx + 0xe0]
lea edi, [ebx + 0xd8]
cmp eax, ecx
mov dword [esp + 0x58], 1
je 0x4bc46a
lea edx, [esp + 0x58]
push edx
push eax
call fcn.00445660
mov eax, dword [edi + 4]
add esp, 8
add eax, 0x28
mov dword [edi + 4], eax
jmp 0x4bc480
push 1
lea ecx, [esp + 0x18]
push 1
lea edx, [esp + 0x60]
push ecx
push edx
push eax
mov ecx, edi
call fcn.00445250
lea ecx, [esp + 0x74]
mov dword [esp + 0x88], 0xb
call fcn.004207d0
lea ecx, [esp + 0x68]
mov byte [esp + 0x88], 0xa
call fcn.00402ab0
lea ecx, [esp + 0x5c]
mov dword [esp + 0x88], 0xffffffff
call fcn.00402ab0
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.botcount
call fcn.00405b90
mov ecx, ebp
call fcn.004dbbd0
test al, al
je 0x4bc50b
mov ecx, dword [esp + 0x24]
xor eax, eax
mov ax, word [ebx + 0x84]
mov dword [esp + 0x30], eax
cmp eax, ecx
lea eax, [esp + 0x30]
jl 0x4bc501
lea eax, [esp + 0x24]
mov cx, word [eax]
mov word [ebx + 0x88], cx
mov eax, dword [esp + 0x28]
lea edx, [eax + eax*2]
shl edx, 6
lea eax, [edx + 0x6a6bd4]
mov dword [esp + 0x1c], eax
mov eax, dword [eax]
test eax, eax
je 0x4bc862
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x4bc862
xor esi, esi
lea eax, [esp + 0x14]
lea ecx, [esp + 0x34]
push eax
mov dword [esp + 0x8c], 0xc
call fcn.00482bc0
push 8
mov byte [esp + 0x8c], 0xe
call fcn.0050d330
lea ecx, [eax + 8]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
add esp, 4
mov byte [eax], 0
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x88], 0xf
mov eax, dword [edx]
mov eax, dword [esi + eax + 0xc]
test eax, eax
je 0x4bc822
lea ecx, [esp + 0x34]
push ecx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x38], esp
push eax
call fcn.00405b90
mov ecx, dword [esp + 0x24]
call fcn.004dbb20
test al, al
je 0x4bc822
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
mov edx, eax
sub edx, edi
je 0x4bc689
mov cl, byte [esp + 0x14]
mov byte [esp + 0x30], 0x20
mov byte [esp + 0x13], cl
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x13]
push edx
push ecx
push eax
push edi
call fcn.00492910
mov ecx, dword [esp + 0x48]
add esp, 0x10
cmp eax, ecx
je 0x4bc689
sub eax, dword [esp + 0x34]
cmp eax, 0xffffffff
je 0x4bc689
lea edx, [esp + 0x40]
push eax
push edx
lea ecx, [esp + 0x3c]
call fcn.00482090
lea ecx, [esp + 0x34]
mov byte [esp + 0x88], 0x11
cmp eax, ecx
je 0x4bc664
mov ebp, dword [eax + 4]
mov eax, dword [eax]
mov edi, dword [esp + 0x34]
cmp eax, ebp
je 0x4bc643
cmp edi, dword [esp + 0x38]
je 0x4bc63f
mov dl, byte [eax]
inc eax
mov byte [edi], dl
inc edi
cmp eax, ebp
jne 0x4bc62d
jmp 0x4bc643
cmp eax, ebp
jne 0x4bc654
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x34]
push eax
push edi
call fcn.004045c0
jmp 0x4bc664
lea ecx, [esp + 0x15]
push ecx
push ebp
push eax
lea ecx, [esp + 0x40]
call fcn.00436cb0
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x40]
sub edx, eax
lea ecx, [esp + 0x48]
push edx
push eax
mov byte [esp + 0x90], 0x12
call fcn.00402b70
mov byte [esp + 0x88], 0xf
lea ecx, [esp + 0x5c]
call fcn.004047a0
lea ecx, [esp + 0x68]
mov byte [esp + 0x88], 0x13
call fcn.004047a0
lea ecx, [esp + 0x74]
mov byte [esp + 0x88], 0x14
call fcn.004047a0
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x88], 0x15
mov ecx, dword [eax]
xor eax, eax
mov edx, dword [esi + ecx + 4]
or ecx, 0xffffffff
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, edx
push ecx
push edx
lea ecx, [esp + 0x64]
call fcn.00401aa0
lea edx, [esp + 0x34]
lea eax, [esp + 0x4c]
push edx
push 0x76
push eax
call fcn.00473b70
add esp, 0xc
lea ecx, [esp + 0x68]
mov byte [esp + 0x88], 0x16
cmp eax, ecx
je 0x4bc747
mov ebp, dword [eax + 4]
mov eax, dword [eax]
mov edi, dword [esp + 0x68]
cmp eax, ebp
je 0x4bc726
cmp edi, dword [esp + 0x6c]
je 0x4bc722
mov dl, byte [eax]
inc eax
mov byte [edi], dl
inc edi
cmp eax, ebp
jne 0x4bc710
jmp 0x4bc726
cmp eax, ebp
jne 0x4bc737
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x68]
push eax
push edi
call fcn.004045c0
jmp 0x4bc747
lea ecx, [esp + 0x16]
push ecx
push ebp
push eax
lea ecx, [esp + 0x74]
call fcn.00436cb0
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x4c]
sub edx, eax
lea ecx, [esp + 0x54]
push edx
push eax
mov byte [esp + 0x90], 0x17
call fcn.00402b70
mov eax, dword [esp + 0x1c]
lea edi, [ebx + 0xd8]
mov byte [esp + 0x88], 0x15
mov ecx, dword [eax]
mov eax, dword [edi + 4]
mov edx, dword [esi + ecx]
mov ecx, dword [edi + 8]
cmp eax, ecx
mov dword [esp + 0x58], edx
je 0x4bc7af
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], eax
test eax, eax
mov byte [esp + 0x88], 0x18
je 0x4bc7a9
lea ecx, [esp + 0x58]
push ecx
mov ecx, eax
call fcn.00492690
add dword [edi + 4], 0x28
jmp 0x4bc7c5
push 1
lea edx, [esp + 0x1b]
push 1
lea ecx, [esp + 0x60]
push edx
push ecx
push eax
mov ecx, edi
call fcn.00445250
lea ecx, [esp + 0x74]
mov byte [esp + 0x88], 0x1a
call fcn.00402ab0
lea ecx, [esp + 0x68]
mov byte [esp + 0x88], 0x19
call fcn.00402ab0
lea edx, [esp + 0x5c]
mov dword [esp + 0x2c], edx
lea ecx, [esp + 0x5c]
mov byte [esp + 0x88], 0x1b
call fcn.0041fc40
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x34]
sub eax, ecx
mov dword [esp + 0x88], 0x1c
push eax
push ecx
lea ecx, [esp + 0x44]
call fcn.00402b70
jmp 0x4bc842
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
sub ecx, eax
mov dword [esp + 0x88], 0x10
push ecx
push eax
lea ecx, [esp + 0x44]
call fcn.00402b70
mov edx, dword [esp + 0x1c]
add esi, 0x10
mov dword [esp + 0x88], 0xffffffff
mov eax, dword [edx]
mov ecx, dword [esi + eax + 4]
test ecx, ecx
jne 0x4bc536
lea ebp, [ebx + 0x6c]
push 0x69bcdc
mov ecx, ebp
call fcn.004db290
push str.AMXX
mov ecx, ebp
mov edi, eax
call fcn.004db290
cmp edi, 0xffffffff
je 0x4bc9ff
cmp eax, 0xffffffff
je 0x4bc9ff
mov ecx, dword [ebx + 0xd8]
lea edx, [eax + eax*4]
lea ebp, [edi + edi*4]
mov edi, dword [ecx + edx*8 + 0x10]
lea eax, [ecx + edx*8 + 0x10]
shl ebp, 3
mov eax, dword [eax + 4]
mov esi, dword [ecx + ebp + 0x10]
mov ecx, dword [ecx + ebp + 0x14]
sub ecx, esi
sub eax, edi
cmp ecx, eax
jne 0x4bc9ff
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bc9ff
mov esi, dword [ebx + 0xd8]
mov eax, dword [ebx + 0xdc]
lea ecx, [esi + ebp + 0x28]
cmp ecx, eax
je 0x4bc967
sub eax, ecx
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
test edx, edx
jle 0x4bc967
lea esi, [esi + ebp + 0x3c]
mov edi, edx
mov ecx, dword [esi - 0x14]
lea edx, [esi - 0x38]
lea eax, [esi - 0x10]
mov dword [esi - 0x3c], ecx
cmp eax, edx
je 0x4bc925
mov eax, dword [esi - 0xc]
mov ecx, dword [esi - 0x10]
lea edx, [esp + 0x17]
push edx
push eax
push ecx
lea ecx, [esi - 0x38]
call fcn.0041cfd0
lea eax, [esi - 0x2c]
lea ecx, [esi - 4]
cmp ecx, eax
je 0x4bc943
mov eax, dword [esi]
mov ecx, dword [esi - 4]
lea edx, [esp + 0x16]
push edx
push eax
push ecx
lea ecx, [esi - 0x2c]
call fcn.0041cfd0
lea ecx, [esi + 8]
lea eax, [esi - 0x20]
cmp ecx, eax
je 0x4bc961
mov eax, dword [esi + 0xc]
mov ecx, dword [ecx]
lea edx, [esp + 0x15]
push edx
push eax
push ecx
lea ecx, [esi - 0x20]
call fcn.0041cfd0
add esi, 0x28
dec edi
jne 0x4bc900
mov eax, dword [ebx + 0xdc]
add eax, 0xffffffd8
mov esi, eax
mov dword [ebx + 0xdc], eax
mov dword [esp + 0x30], esi
mov ebx, 0x1d
mov dword [esp + 0x88], ebx
lea edi, [esi + 0x1c]
mov dword [esp + 0x2c], edi
mov ecx, edi
mov byte [esp + 0x88], 0x1f
call fcn.0041fc40
lea ecx, [edi + 8]
mov byte [esp + 0x88], 0x1e
call fcn.0041bea0
lea edi, [esi + 0x10]
mov dword [esp + 0x2c], edi
mov ecx, edi
mov byte [esp + 0x88], 0x20
call fcn.0041fc40
lea ecx, [edi + 8]
mov byte [esp + 0x88], bl
call fcn.0041bea0
add esi, 4
mov dword [esp + 0x30], esi
mov ecx, esi
mov dword [esp + 0x88], 0x21
call fcn.0041fc40
lea ecx, [esi + 8]
mov dword [esp + 0x88], 0xffffffff
call fcn.0041bea0
mov ecx, dword [esp + 0x80]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x7c
ret
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x618079
push eax
mov dword fs:[0], esp
sub esp, 0x48
push ebx
mov ebx, ecx
push ebp
push esi
mov eax, dword [ebx + 0xf0]
push edi
test al, 0x20
lea edi, [ebx + 0x6c]
jne 0x4bca4e
mov edi, dword [ebx + 0x20]
mov ecx, eax
lea edx, [ebx + 0x28]
and ecx, 2
jne 0x4bca5b
mov edx, dword [ebx + 0x10]
mov dword [esp + 0x1c], edx
lea edx, [ebx + 0x34]
test al, 4
jne 0x4bca69
mov edx, dword [ebx + 0x14]
test ah, 1
mov dword [esp + 0x18], edx
je 0x4bca7a
mov edx, dword [ebx + 0xe8]
jmp 0x4bca7d
mov edx, dword [ebx + 0x24]
test ecx, ecx
mov dword [esp + 0x14], edx
je 0x4bce7a
push 0
or ah, 2
sub esp, 8
mov dword [ebx + 0xf0], eax
mov ecx, esp
mov dword [esp + 0x2c], esp
push str.timelimit
lea esi, [ebx + 0x28]
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
push 0
mov dword [ebx + 0x4c], eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x2c], esp
push str.fraglimit
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
push 0
mov dword [ebx + 0x54], eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x2c], esp
push str.roundlimit
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
push 0
mov dword [ebx + 0x5c], eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x2c], esp
push str.capturelimit
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
sub esp, 0xc
mov dword [ebx + 0x64], eax
mov ecx, esp
mov dword [esp + 0x2c], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x34], esp
push str.time_remaining
call fcn.00405b90
lea eax, [esp + 0x38]
mov ecx, esi
push eax
call fcn.0042fd10
mov eax, dword [eax]
mov dword [esp + 0x60], 0
push eax
call fcn.004bd710
add esp, 4
mov dword [ebx + 0x50], eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x60], 1
call fcn.0041fc40
mov ecx, dword [ebx + 0x50]
or eax, 0xffffffff
cmp ecx, eax
mov dword [esp + 0x60], eax
jne 0x4bcc0e
sub esp, 0xc
mov ebp, esp
mov dword [esp + 0x2c], esp
mov dword [esp + 0x2c], ebp
lea ecx, [esp + 0x1e]
mov dword [esp + 0x6c], 2
push ecx
mov ecx, ebp
call fcn.00482bc0
push 8
mov byte [esp + 0x70], 4
call fcn.0050d330
lea edx, [eax + 8]
push ecx
mov dword [ebp], eax
mov dword [ebp + 4], eax
mov dword [ebp + 8], edx
or ebp, 0xffffffff
mov ecx, esp
mov dword [esp + 0x34], esp
push str.Score_Time
mov byte [eax], 0
mov dword [esp + 0x78], ebp
call fcn.00405b90
lea eax, [esp + 0x38]
mov ecx, esi
push eax
call fcn.0042fd10
mov eax, dword [eax]
mov dword [esp + 0x60], 5
push eax
call fcn.004bd710
add esp, 4
mov dword [ebx + 0x50], eax
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
sub ecx, eax
mov dword [esp + 0x60], 6
push ecx
push eax
lea ecx, [esp + 0x34]
call fcn.00402b70
mov dword [esp + 0x60], ebp
cmp dword [esp + 0x14], 0x1a
jne 0x4bcd1c
lea edx, [esp + 0x14]
push edx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x2c], esp
push str.clients
call fcn.00405b90
mov ecx, dword [esp + 0x24]
call fcn.004dbbd0
test al, al
je 0x4bcd1c
mov eax, dword [ebx + 0xf0]
test al, 0x20
je 0x4bcc5d
mov ax, word [esp + 0x14]
mov word [ebx + 0x84], ax
jmp 0x4bcd1c
mov edx, dword [esp + 0x14]
xor ecx, ecx
mov cx, word [edi + 0x18]
cmp ecx, edx
je 0x4bcd1c
lea esi, [ebx + 0x6c]
or al, 0x20
push edi
mov ecx, esi
mov dword [ebx + 0xf0], eax
call fcn.004044c0
lea edx, [edi + 0xc]
lea ecx, [esi + 0xc]
push edx
call fcn.004335b0
mov ax, word [edi + 0x18]
lea ebp, [edi + 0x20]
mov word [esi + 0x18], ax
mov cx, word [edi + 0x1a]
mov word [esi + 0x1a], cx
mov dx, word [edi + 0x1c]
mov word [esi + 0x1c], dx
mov ax, word [edi + 0x1e]
lea ecx, [esi + 0x20]
push ebp
mov word [esi + 0x1e], ax
call fcn.004044c0
add ebp, 0xc
lea ecx, [esi + 0x2c]
push ebp
call fcn.004044c0
lea ecx, [edi + 0x38]
push ecx
lea ecx, [esi + 0x38]
call fcn.004044c0
lea edx, [edi + 0x44]
lea ecx, [esi + 0x44]
push edx
call fcn.004044c0
lea eax, [edi + 0x50]
lea ecx, [esi + 0x50]
push eax
call fcn.004044c0
mov cl, byte [edi + 0x5c]
add edi, 0x6c
mov byte [esi + 0x5c], cl
mov edx, dword [edi - 0xc]
mov dword [esi + 0x60], edx
mov eax, dword [edi - 8]
mov dword [esi + 0x64], eax
mov cl, byte [edi - 4]
mov byte [esi + 0x68], cl
add esi, 0x6c
push edi
mov ecx, esi
call fcn.00433910
mov dx, word [esp + 0x14]
mov word [ebx + 0x84], dx
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x2c], esp
push str.sv_punkbuster
call fcn.00405b90
mov ecx, dword [esp + 0x28]
call fcn.00431ff0
test al, al
je 0x4bce7a
lea ecx, [esp + 0x34]
call fcn.004047a0
lea ecx, [esp + 0x40]
mov dword [esp + 0x60], 7
call fcn.004047a0
lea ecx, [esp + 0x4c]
mov byte [esp + 0x60], 8
call fcn.004047a0
mov edi, 0x6a3194
or ecx, 0xffffffff
xor eax, eax
mov dword [esp + 0x60], 9
repne scasb al, byte es:[edi]
not ecx
mov eax, dword [esp + 0x38]
dec ecx
mov edi, ecx
mov ecx, dword [esp + 0x34]
add edi, 0x6a3194
sub eax, ecx
mov esi, edi
sub esi, 0x6a3194
cmp esi, eax
ja 0x4bcdc5
push esi
push 0x6a3194
push ecx
call fcn.004bf360
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
add esp, 0xc
add esi, ecx
lea ecx, [esp + 0x34]
push eax
push esi
call fcn.004045c0
jmp 0x4bcdf3
push eax
push 0x6a3194
push ecx
call fcn.004bf360
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
add esp, 0xc
sub eax, ecx
lea edx, [esp + 0x12]
add eax, 0x6a3194
push edx
push edi
push eax
lea ecx, [esp + 0x40]
call fcn.004c2490
mov eax, dword [ebx + 0xdc]
mov ecx, dword [ebx + 0xe0]
add ebx, 0xd8
cmp eax, ecx
mov dword [esp + 0x30], 1
je 0x4bce34
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
test eax, eax
mov byte [esp + 0x60], 0xa
je 0x4bce2e
lea ecx, [esp + 0x30]
push ecx
mov ecx, eax
call fcn.00492690
add dword [ebx + 4], 0x28
jmp 0x4bce4a
push 1
lea edx, [esp + 0x17]
push 1
lea ecx, [esp + 0x38]
push edx
push ecx
push eax
mov ecx, ebx
call fcn.00445250
lea ecx, [esp + 0x4c]
mov dword [esp + 0x60], 0xc
call fcn.00402ab0
lea ecx, [esp + 0x40]
mov byte [esp + 0x60], 0xb
call fcn.00402ab0
lea ecx, [esp + 0x34]
mov dword [esp + 0x60], 0xffffffff
call fcn.00402ab0
mov ecx, dword [esp + 0x58]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x54
ret
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x6180b0
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov eax, dword [ebp + 0xf0]
lea ebx, [ebp + 0x34]
test al, 4
jne 0x4bcebe
mov ebx, dword [ebp + 0x14]
test al, 0x20
je 0x4bcfb6
sub esp, 0xc
mov esi, esp
mov dword [esp + 0x20], esp
mov dword [esp + 0x20], esi
xor eax, eax
lea edi, [esi + 8]
mov dword [esp + 0x38], eax
mov dword [esi], eax
mov dword [esi + 4], eax
push eax
lea eax, [esp + 0x23]
mov ecx, edi
push eax
call fcn.00492050
push 8
mov byte [esp + 0x3c], 2
call fcn.0050d330
lea ecx, [eax + 8]
mov dword [esi], eax
push ecx
mov dword [edi], ecx
mov ecx, esp
mov dword [esp + 0x28], esp
mov dword [esi + 4], eax
push str.hostname
mov byte [eax], 0
mov dword [esp + 0x44], 0xffffffff
call fcn.00405b90
lea edx, [esp + 0x2c]
mov ecx, ebx
push edx
call fcn.0042fd10
lea esi, [ebp + 0x6c]
mov dword [esp + 0x2c], 3
cmp eax, esi
je 0x4bcf96
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov edi, dword [esi]
cmp eax, ecx
je 0x4bcf5b
cmp edi, dword [esi + 4]
je 0x4bcf57
mov dl, byte [eax]
inc eax
mov byte [edi], dl
inc edi
cmp eax, ecx
jne 0x4bcf46
jmp 0x4bcf5b
cmp eax, ecx
jne 0x4bcf80
mov ebp, dword [esi + 4]
cmp edi, ebp
je 0x4bcf96
mov eax, ebp
sub eax, ebp
inc eax
je 0x4bcf74
push eax
push ebp
push edi
call fcn.00510210
add esp, 0xc
mov eax, dword [esi + 4]
sub eax, ebp
add eax, edi
mov dword [esi + 4], eax
jmp 0x4bcf96
mov dl, byte [esp + 0x13]
mov byte [esp + 0x12], dl
lea edx, [esp + 0x12]
push edx
push ecx
push eax
mov ecx, esi
call fcn.00404c60
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2c], 4
test eax, eax
je 0x4bcfb6
mov ecx, dword [esp + 0x20]
sub ecx, eax
push ecx
push eax
call fcn.00401ce0
add esp, 8
mov ecx, dword [esp + 0x24]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x20
ret
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x618182
push eax
mov dword fs:[0], esp
sub esp, 0x128
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov eax, dword [ebp + 0xf0]
and eax, 2
je 0x4bd005
lea esi, [ebp + 0x28]
mov dword [esp + 0x2c], esi
jmp 0x4bd00e
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x2c], ecx
mov esi, ecx
test eax, eax
je 0x4bd694
lea edx, [esp + 0x37]
lea ecx, [esp + 0x38]
push edx
call fcn.00482bc0
sub esp, 0xc
mov dword [esp + 0x14c], 0
mov edi, esp
mov dword [esp + 0x24], esp
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x30], esp
call fcn.00403f90
sub esp, 8
lea ebx, [ebp + 0x28]
mov ecx, esp
mov dword [esp + 0x38], esp
push 0x6a12cc
call fcn.00405b90
push edi
mov ecx, ebx
call fcn.0042fd10
lea ecx, [esp + 0x44]
call fcn.004fe770
sub esp, 8
mov eax, 0x6a12cc
mov edx, esp
mov dword [esp + 0x20], esp
test eax, eax
mov dword [edx], 0x6a12cc
je 0x4bd093
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4bd095
xor ecx, ecx
mov dword [edx + 4], ecx
mov ecx, ebx
call fcn.004ae170
lea ecx, [esp + 0x44]
call fcn.004047a0
mov ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x38]
sub ecx, edi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov ecx, edx
xor ebx, ebx
shr ecx, 0x1f
add edx, ecx
mov byte [esp + 0x140], 1
mov dword [esp + 0x18], ebx
je 0x4bd37c
mov dword [esp + 0x30], ebx
mov edx, dword [esp + 0x30]
lea ecx, [esp + 0x20]
lea eax, [edx + edi]
push eax
call fcn.00420b60
lea eax, [esp + 0x20]
push 0
push eax
mov byte [esp + 0x148], 2
call fcn.004bdde0
mov eax, dword [esp + 0x28]
add esp, 8
lea ecx, [esp + 0x50]
lea edx, [esp + 0x10]
push ecx
push edx
push str.Team__d___32s
push eax
call fcn.0051080f
add esp, 0x10
cmp eax, 2
jne 0x4bd173
lea edi, [esp + 0x50]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 2
jl 0x4bd173
mov dl, byte [esp + ecx + 0x4e]
lea eax, [esp + ecx + 0x4e]
cmp dl, 0x29
jne 0x4bd173
cmp byte [esp + ecx + 0x4f], 0x3a
jne 0x4bd173
mov byte [eax], 0
lea edi, [esp + 0x50]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + 0x50]
lea ecx, [esp + ecx + 0x50]
push ecx
push edx
lea ecx, [esp + 0x4c]
call fcn.00401aa0
jmp 0x4bd311
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
cmp eax, ecx
je 0x4bd35e
mov edi, str.__empty_team__
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x24]
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x20]
not ecx
dec ecx
sub edx, eax
cmp edx, ecx
jne 0x4bd1cb
mov esi, eax
mov edi, str.__empty_team__
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4bd1c7
lea ecx, [esp + 0x20]
mov byte [esp + 0x140], 1
call fcn.00402ab0
mov esi, dword [esp + 0x2c]
jmp 0x4bd322
mov esi, dword [esp + 0x2c]
lea ecx, [esp + 0x7c]
call fcn.004047a0
lea ecx, [esp + 0x88]
mov byte [esp + 0x140], 3
call fcn.00403f90
lea ecx, [esp + 0x94]
call fcn.0042d2a0
lea ecx, [esp + 0xcc]
mov byte [esp + 0x140], 5
mov byte [esp + 0xb8], 0
call fcn.00403f90
lea ecx, [esp + 0xd8]
mov byte [esp + 0x140], 6
call fcn.00403f90
lea ecx, [esp + 0xe4]
mov byte [esp + 0x140], 7
call fcn.00403f90
lea ecx, [esp + 0x74]
mov byte [esp + 0x140], 8
call fcn.004dc020
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x1f]
inc ebx
push ecx
push edx
push eax
lea ecx, [esp + 0x94]
mov byte [esp + 0x14c], 9
mov byte [esp + 0x80], bl
call fcn.0041cfd0
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x17]
push ecx
push edx
push eax
lea ecx, [esp + 0xe4]
call fcn.0041cfd0
lea edx, [esp + 0x74]
lea ecx, [ebp + 0x40]
push edx
call fcn.00490980
lea ecx, [esp + 0xe4]
mov byte [esp + 0x140], 0xe
call fcn.004207d0
lea ecx, [esp + 0xd8]
mov byte [esp + 0x140], 0xd
call fcn.004207d0
lea ecx, [esp + 0xcc]
mov byte [esp + 0x140], 0xc
call fcn.004207d0
lea ecx, [esp + 0x94]
mov byte [esp + 0x140], 0xb
call fcn.00432740
lea ecx, [esp + 0x88]
mov byte [esp + 0x140], 0xa
call fcn.004207d0
lea ecx, [esp + 0x7c]
mov byte [esp + 0x140], 2
call fcn.00402ab0
lea ecx, [esp + 0x20]
mov byte [esp + 0x140], 1
call fcn.00402ab0
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x3c]
add edi, 0xc
inc eax
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x18], eax
sub ecx, edi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [esp + 0x18]
cmp eax, edx
jb 0x4bd0da
jmp 0x4bd37c
mov edx, dword [ebp]
push str.CServerQuery::Apply_Parse_Savage:_Invalid_player_field
mov ecx, ebp
call dword [edx + 0x1c]
lea ecx, [esp + 0x20]
mov byte [esp + 0x140], 1
call fcn.00402ab0
mov ecx, dword [ebp + 0xf0]
mov byte [esp + 0x140], 0
or ecx, 8
mov dword [ebp + 0xf0], ecx
lea ecx, [esp + 0x44]
call fcn.00402ab0
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x38]
cmp edi, ebx
mov dword [esp + 0x140], 0xf
je 0x4bd3c3
push 0
mov ecx, edi
call fcn.00483b50
add edi, 0xc
cmp edi, ebx
jne 0x4bd3b3
or edi, 0xffffffff
lea ecx, [esp + 0x38]
mov dword [esp + 0x140], edi
call fcn.00479500
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x1c], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x24], esp
push 0x697f88
call fcn.00405b90
lea eax, [esp + 0x58]
mov ecx, esi
push eax
call fcn.0042fd10
lea ebx, [ebp + 0x6c]
mov dword [esp + 0x140], 0x10
cmp eax, ebx
je 0x4bd428
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x17]
push edx
push ecx
push eax
mov ecx, ebx
call fcn.0041cfd0
lea ecx, [esp + 0x44]
mov dword [esp + 0x140], edi
call fcn.00402ab0
sub esp, 8
mov eax, 0x697f88
mov edx, esp
mov dword [esp + 0x18], esp
test eax, eax
mov dword [edx], 0x697f88
je 0x4bd45e
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4bd460
xor ecx, ecx
mov dword [edx + 4], ecx
mov ecx, esi
call fcn.004ae170
lea ecx, [ebp + 0x78]
push ecx
push ebx
call fcn.004bdde0
add esp, 8
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x1c], esp
push str.cnum
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
push 0
mov word [ebp + 0x84], ax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x1c], esp
push str.cmax
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
sub esp, 0xc
mov word [ebp + 0x86], ax
mov ecx, esp
mov dword [esp + 0x1c], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x24], esp
push str.gametype
call fcn.00405b90
lea edx, [esp + 0x34]
mov ecx, esi
push edx
call fcn.0042fd10
lea edi, [ebp + 0x98]
mov dword [esp + 0x140], 0x11
cmp eax, edi
je 0x4bd512
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea edx, [esp + 0x17]
push edx
push ecx
push eax
mov ecx, edi
call fcn.0041cfd0
lea ecx, [ebp + 0x8c]
cmp edi, ecx
je 0x4bd52d
mov eax, dword [edi + 4]
mov edi, dword [edi]
lea edx, [esp + 0x1f]
push edx
push eax
push edi
call fcn.0041cfd0
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
sub ecx, eax
mov dword [esp + 0x140], 0x12
push ecx
push eax
lea ecx, [esp + 0x30]
call fcn.00402b70
push 0
mov dword [esp + 0x144], 0xffffffff
sub esp, 8
mov ecx, esp
mov dword [esp + 0x1c], esp
push str.time
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
mov ecx, eax
cmp ecx, 0xe10
jl 0x4bd5cf
cdq
mov edi, 0x3c
idiv edi
mov eax, 0x88888889
push edx
imul ecx
add edx, ecx
sar edx, 5
mov edi, edx
mov eax, edx
shr edi, 0x1f
add eax, edi
mov edi, 0x3c
cdq
idiv edi
mov eax, 0x91a2b3c5
push edx
imul ecx
add edx, ecx
lea ecx, [ebp + 0xb0]
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add edx, eax
push edx
push str._Running__d:_02d:_02d_
push ecx
call fcn.004fda00
add esp, 0x14
jmp 0x4bd606
test ecx, ecx
jle 0x4bd606
mov eax, ecx
mov edi, 0x3c
cdq
idiv edi
mov eax, 0x88888889
push edx
imul ecx
add edx, ecx
lea ecx, [ebp + 0xb0]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
push edx
push str._Running__d:_02d_
push ecx
call fcn.004fda00
add esp, 0x10
lea edi, [ebp + 0xbc]
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x1c], esp
push str.world
call fcn.00405b90
mov ecx, esi
call fcn.004dbb20
push edi
sub esp, 8
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0x6a12ac
call fcn.00405b90
mov ecx, esi
call fcn.004dbb20
mov edi, dword [ebp + 0xf0]
push 0
sub esp, 8
or edi, 0x20
mov ecx, esp
mov dword [esp + 0x1c], esp
push str.timelimit
mov dword [ebp + 0xf0], edi
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
mov ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [ebp + 0xf0]
or ah, 2
mov dword [ebp + 0x4c], edx
mov dword [ebp + 0xf0], eax
mov ecx, dword [esp + 0x138]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x134
ret
mov eax, dword [ecx + 0xf4]
dec eax
cmp eax, 6
ja case.default.0x4bd6bc
jmp dword [eax*4 + 0x4bd6e8]
jmp 0x4b9620
jmp 0x4bb5c0
jmp 0x4bbb20
jmp 0x4bca20
jmp 0x4bce90
jmp 0x4bcfd0
jmp 0x4bca20
ret