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

Disassembly:
push 0xffffffffffffffff
push 0x61729d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10c
push ebx
mov ebx, ecx
push ebp
push esi
mov edx, dword [ebx + 0xf0]
lea eax, [esp + 0x3b]
push edi
or edx, 0x1ee
push eax
lea ecx, [esp + 0x44]
mov dword [ebx + 0xf4], 5
mov dword [ebx + 0xf0], edx
call fcn.00482bc0
sub esp, 0xc
mov dword [esp + 0x130], 0
mov dword [esp + 0x20], esp
mov ecx, esp
mov eax, dword [esp + 0x13c]
lea edx, [esp + 0x1f]
push edx
mov edx, dword [esp + 0x13c]
push eax
push edx
mov byte [esp + 0x13c], 1
call fcn.004be390
lea ecx, [esp + 0x4c]
mov byte [esp + 0x130], 0
call fcn.004fe770
mov esi, dword [esp + 0x40]
lea eax, [esp + 0x13]
push eax
lea ecx, [esp + 0x20]
call fcn.00482bc0
push 0x6973d4
mov byte [esp + 0x128], 2
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x24], esp
push 0xffffffffffffffff
push 1
push ecx
mov ecx, esi
call fcn.004820c0
lea ecx, [esp + 0x2c]
call fcn.004fea50
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
xor esi, esi
shr eax, 0x1f
add edx, eax
test edx, edx
jle 0x4b29a3
lea ebp, [ebx + 0x28]
sub esp, 8
lea ecx, [esi + 1]
mov dword [esp + 0x1c], esp
mov edi, esp
push ecx
lea ecx, [esp + 0x28]
call fcn.00482bd0
push edi
mov ecx, eax
call fcn.00401a00
sub esp, 8
lea ecx, [esp + 0x2c]
mov edx, esp
mov dword [esp + 0x24], esp
push edx
push esi
call fcn.00482bd0
mov ecx, eax
call fcn.00401a00
mov ecx, ebp
call fcn.00443640
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
add esi, 2
shr eax, 0x1f
add edx, eax
cmp esi, edx
jl 0x4b2942
lea ecx, [esp + 0x1c]
mov byte [esp + 0x124], 0
call fcn.00482be0
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov ecx, edx
mov dword [esp + 0x18], 1
shr ecx, 0x1f
add edx, ecx
cmp edx, 1
jle 0x4b2c79
lea edx, [esp + 0x13]
lea ecx, [esp + 0x1c]
push edx
call fcn.00482bc0
mov eax, dword [esp + 0x18]
push 0
push 1
push eax
lea ecx, [esp + 0x4c]
mov byte [esp + 0x130], 3
call fcn.00482bd0
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x28], esp
push eax
call fcn.00435600
lea ecx, [esp + 0x30]
call fcn.004fe3b0
lea ecx, [esp + 0x60]
call fcn.00403f90
lea ecx, [esp + 0x6c]
mov byte [esp + 0x124], 4
call fcn.00403f90
lea ecx, [esp + 0x78]
call fcn.0042d2a0
lea ecx, [esp + 0xb0]
mov byte [esp + 0x124], 6
mov byte [esp + 0x9c], 0
call fcn.00403f90
lea ecx, [esp + 0xbc]
mov byte [esp + 0x124], 7
call fcn.00403f90
lea ecx, [esp + 0xc8]
mov byte [esp + 0x124], 8
call fcn.00403f90
lea ecx, [esp + 0x58]
mov byte [esp + 0x124], 9
call fcn.004dc020
mov cl, byte [esp + 0x18]
mov edx, dword [esp + 0x20]
mov byte [esp + 0x58], cl
mov ecx, dword [esp + 0x1c]
sub edx, ecx
mov eax, 0x2aaaaaab
imul edx
sar edx, 1
mov eax, edx
mov byte [esp + 0x124], 0xa
shr eax, 0x1f
add edx, eax
cmp edx, 3
jne 0x4b2aef
call fcn.004fde70
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x84], eax
add ecx, 0xc
call fcn.004fde70
mov edx, dword [esp + 0x1c]
mov word [esp + 0x94], ax
lea eax, [edx + 0x18]
jmp 0x4b2b4e
cmp edx, 2
jne 0x4b2b0a
call fcn.004fde70
mov word [esp + 0x94], ax
mov eax, dword [esp + 0x1c]
add eax, 0xc
jmp 0x4b2b4e
cmp edx, 4
jne 0x4b2bce
call fcn.004fde70
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x84], eax
add ecx, 0xc
call fcn.004fde70
mov edx, dword [esp + 0x1c]
mov word [esp + 0x94], ax
lea ecx, [esp + 0xbc]
lea eax, [edx + 0x18]
push eax
call fcn.004044c0
mov eax, dword [esp + 0x1c]
add eax, 0x24
push eax
lea ecx, [esp + 0x70]
call fcn.004044c0
lea ecx, [esp + 0x78]
lea edx, [esp + 0x6c]
push ecx
push edx
call fcn.004bd7c0
add esp, 8
lea eax, [esp + 0x58]
lea ecx, [ebx + 0x40]
push eax
call fcn.00490980
lea ecx, [esp + 0xc8]
mov byte [esp + 0x124], 0x14
call fcn.004207d0
lea ecx, [esp + 0xbc]
mov byte [esp + 0x124], 0x13
call fcn.004207d0
lea ecx, [esp + 0xb0]
mov byte [esp + 0x124], 0x12
call fcn.004207d0
lea ecx, [esp + 0x78]
mov byte [esp + 0x124], 0x11
call fcn.00432740
mov byte [esp + 0x124], 0x10
jmp 0x4b2c23
lea ecx, [esp + 0xc8]
mov byte [esp + 0x124], 0xf
call fcn.004207d0
lea ecx, [esp + 0xbc]
mov byte [esp + 0x124], 0xe
call fcn.004207d0
lea ecx, [esp + 0xb0]
mov byte [esp + 0x124], 0xd
call fcn.004207d0
lea ecx, [esp + 0x78]
mov byte [esp + 0x124], 0xc
call fcn.00432740
mov byte [esp + 0x124], 0xb
lea ecx, [esp + 0x6c]
call fcn.004207d0
lea ecx, [esp + 0x60]
mov byte [esp + 0x124], 3
call fcn.004207d0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x124], 0
call fcn.00482be0
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
sub ecx, edx
mov eax, 0x2aaaaaab
imul ecx
mov esi, dword [esp + 0x18]
sar edx, 1
mov ecx, edx
inc esi
shr ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], esi
cmp esi, edx
jl 0x4b29df
mov ecx, dword [ebx + 0x2c]
mov edx, dword [ebx + 0x28]
lea esi, [ebx + 0x28]
sub ecx, edx
mov eax, 0x2aaaaaab
xor ebp, ebp
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
test edx, edx
jle 0x4b2e27
xor edi, edi
mov dword [esp + 0x14], edi
mov eax, dword [esi]
mov ecx, dword [eax + edi + 4]
mov edx, dword [eax + edi]
sub ecx, edx
cmp ecx, 9
jb 0x4b2dfb
push 0
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x28], esp
push str.Players_
call fcn.00405b90
push ebp
mov ecx, esi
call fcn.0046c560
mov ecx, eax
call fcn.004b4210
test al, al
je 0x4b2dfb
mov eax, dword [esi]
mov ecx, dword [esp + 0x14]
push 0xffffffffffffffff
lea edx, [esp + 0x30]
push 8
push edx
add ecx, eax
call fcn.004820c0
lea edx, [esp + 0x13]
lea ecx, [esp + 0x1c]
push edx
mov byte [esp + 0x128], 0x15
call fcn.00482bc0
push 0
push 1
push ebp
mov ecx, esi
mov byte [esp + 0x130], 0x16
call fcn.0046c560
sub esp, 0xc
add eax, 0xc
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
call fcn.00435600
lea ecx, [esp + 0x30]
call fcn.004fe3b0
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
xor edi, edi
shr eax, 0x1f
add edx, eax
test edx, edx
jle 0x4b2dd5
mov dword [esp + 0x18], edi
mov ecx, dword [esp + 0x18]
add ecx, esi
call fcn.004fde70
mov ecx, eax
dec ecx
js 0x4b2dab
mov edx, dword [ebx + 0x44]
mov esi, dword [ebx + 0x40]
sub edx, esi
mov eax, 0x5397829d
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ecx, edx
jge 0x4b2dab
lea edx, [esp + 0x2c]
mov eax, esi
push edx
lea edx, [ecx + ecx*2]
shl edx, 4
add edx, ecx
lea ecx, [eax + edx*4 + 0x64]
call fcn.004044c0
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
add esi, 0xc
mov eax, 0x2aaaaaab
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x1c]
sub ecx, esi
inc edi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edi, edx
jl 0x4b2d66
lea ecx, [esp + 0x1c]
mov byte [esp + 0x124], 0x15
call fcn.00482be0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0
call fcn.004207d0
mov edi, dword [esp + 0x14]
mov ecx, dword [ebx + 0x2c]
mov edx, dword [ebx + 0x28]
lea esi, [ebx + 0x28]
sub ecx, edx
mov eax, 0x2aaaaaab
inc ebp
imul ecx
sar edx, 2
mov ecx, edx
add edi, 0x18
shr ecx, 0x1f
add edx, ecx
mov dword [esp + 0x14], edi
cmp ebp, edx
jl 0x4b2ca5
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x20], esp
push str.sv_maxclients
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
mov word [ebx + 0x86], ax
mov ecx, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
sub esp, 0xc
sub ecx, eax
mov eax, 0x5397829d
imul ecx
sar edx, 6
mov eax, edx
mov ecx, esp
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x20], esp
mov word [ebx + 0x84], dx
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x28], esp
push str.gamename
call fcn.00405b90
lea ecx, [esp + 0x40]
push ecx
mov ecx, esi
call fcn.0042fd10
lea edi, [ebx + 0x8c]
push eax
mov ecx, edi
mov byte [esp + 0x128], 0x17
call fcn.004044c0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0
call fcn.004207d0
mov edx, dword [edi]
mov eax, dword [edi + 4]
cmp edx, eax
jne 0x4b2f15
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x20], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x28], esp
push str.fs_game
call fcn.00405b90
lea eax, [esp + 0x40]
mov ecx, esi
push eax
call fcn.0042fd10
push eax
mov ecx, edi
mov byte [esp + 0x128], 0x18
call fcn.004044c0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0
call fcn.004207d0
sub esp, 0xc
mov dword [esp + 0x20], esp
mov ecx, esp
lea edx, [esp + 0x1f]
mov byte [esp + 0x130], 0x19
push edx
push 0x6b3df8
call fcn.00420a90
sub esp, 8
mov byte [esp + 0x138], 0
mov ecx, esp
mov dword [esp + 0x28], esp
push str.mapname
call fcn.00405b90
lea eax, [esp + 0x40]
mov ecx, esi
push eax
call fcn.0042fd10
push eax
lea ecx, [ebx + 0xbc]
mov byte [esp + 0x128], 0x1a
call fcn.004044c0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0
call fcn.004207d0
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x20], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x28], esp
push str.sv_hostname
call fcn.00405b90
lea ecx, [esp + 0x40]
push ecx
mov ecx, esi
call fcn.0042fd10
lea edi, [ebx + 0x6c]
push eax
mov ecx, edi
mov byte [esp + 0x128], 0x1b
call fcn.004044c0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0
call fcn.004207d0
lea edx, [ebx + 0x78]
push edx
push edi
call fcn.004bd7c0
mov edx, esp
mov eax, str.sv_hostname
test eax, eax
mov dword [esp + 0x1c], esp
mov dword [edx], str.sv_hostname
je 0x4b2fff
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b3001
xor ecx, ecx
mov dword [edx + 4], ecx
mov ecx, esi
call fcn.004ae170
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x20], esp
push str.pswrd
call fcn.00405b90
mov ecx, esi
call fcn.00431ff0
push eax
sub esp, 8
mov ecx, esp
mov dword [esp + 0x20], esp
push str.g_needpass
call fcn.00405b90
mov ecx, esi
call fcn.00431ff0
sub esp, 0xc
mov byte [ebx + 0xc8], al
mov ecx, esp
mov dword [esp + 0x20], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x28], esp
push str.g_gametypestring
call fcn.00405b90
lea ecx, [esp + 0x40]
push ecx
mov ecx, esi
call fcn.0042fd10
lea edi, [ebx + 0xa4]
push eax
mov ecx, edi
mov byte [esp + 0x128], 0x1c
call fcn.004044c0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0
call fcn.00402ab0
mov edx, dword [edi]
mov eax, dword [edi + 4]
cmp edx, eax
jne 0x4b30f3
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x20], esp
call fcn.004047a0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x28], esp
push str.g_gametype
call fcn.00405b90
lea eax, [esp + 0x40]
mov ecx, esi
push eax
call fcn.0042fd10
push eax
mov ecx, edi
mov byte [esp + 0x128], 0x1d
call fcn.004044c0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0
call fcn.00402ab0
push 0
sub esp, 8
mov ecx, esp
mov dword [esp + 0x20], esp
push str.sv_privateClients
call fcn.00405b90
mov ecx, esi
call fcn.00431f60
lea ecx, [esp + 0x38]
mov word [ebx + 0x8a], ax
push ecx
mov dword [esp + 0x3c], 0xffffffff
sub esp, 8
mov ecx, esp
mov dword [esp + 0x20], esp
push str.g_friendlyfire
call fcn.00405b90
mov ecx, esi
call fcn.004dbbd0
lea edx, [esp + 0x38]
push edx
sub esp, 8
mov ecx, esp
mov dword [esp + 0x20], esp
push str.scr_friendlyfire
call fcn.00405b90
mov ecx, esi
call fcn.004dbbd0
mov eax, dword [esp + 0x38]
cmp eax, 0xffffffff
je 0x4b316f
mov cl, 0x64
imul cl
mov byte [ebx + 0xd4], al
sub esp, 0xc
mov word [ebx + 0xe4], 0
mov dword [esp + 0x20], esp
mov ecx, esp
lea edx, [esp + 0x1f]
mov byte [esp + 0x130], 0x1e
push edx
push 0x6b3df8
call fcn.00420a90
sub esp, 8
mov byte [esp + 0x138], 0
mov ecx, esp
mov dword [esp + 0x28], esp
push 0x69c38c
call fcn.00405b90
lea eax, [esp + 0x60]
mov ecx, esi
push eax
call fcn.0042fd10
mov edi, str.linux
or ecx, 0xffffffff
xor eax, eax
mov byte [esp + 0x124], 0x1f
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push eax
push str.linux
lea ecx, [esp + 0x58]
call fcn.00490c30
cmp eax, 0xffffffff
je 0x4b31f7
mov dword [ebx + 0xd0], 2
jmp 0x4b3225
mov edi, 0x6a2b50
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push eax
push 0x6a2b50
lea ecx, [esp + 0x58]
call fcn.00490c30
cmp eax, 0xffffffff
je 0x4b3225
mov dword [ebx + 0xd0], 1
lea ecx, [esp + 0x2b]
push ecx
lea ecx, [esp + 0x20]
call fcn.00482bc0
push 0
push 1
sub esp, 0xc
lea edx, [esp + 0x60]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov byte [esp + 0x13c], 0x20
call fcn.00435600
lea ecx, [esp + 0x30]
call fcn.004fe3b0
mov ecx, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
sub ecx, ebp
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edx, 1
mov dword [esp + 0x18], edx
jbe 0x4b341c
mov edi, 0x6a2cb4
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3315
mov edi, 0x6a2cb4
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3315
mov edi, str.baseq3
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 6
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b32ee
mov edi, str.baseq3
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b32ee
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x8c]
call fcn.00404540
mov ebp, dword [esp + 0x1c]
lea eax, [ebp + 0xc]
lea ecx, [ebx + 0xb0]
cmp eax, ecx
je 0x4b3fe2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
jmp 0x4b3fe2
cmp edx, 1
jbe 0x4b341c
mov edi, 0x6a2ca8
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3380
mov edi, 0x6a2ca8
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3380
lea ecx, [edx + edx*2]
mov dword [ebx + 0xe8], 6
lea ebp, [ebp + ecx*4 - 0xc]
lea ecx, [ebx + 0xb0]
cmp ebp, ecx
je 0x4b3371
mov eax, dword [ebp + 4]
mov ebp, dword [ebp]
lea edx, [esp + 0x13]
push edx
push eax
push ebp
call fcn.0041cfd0
mov dword [ebx + 0xcc], 3
jmp 0x4b3fe2
cmp edx, 1
jbe 0x4b341c
mov edi, str.Wolf
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b341c
mov edi, str.Wolf
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b341c
mov edi, str.main
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 8
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b33f5
mov edi, str.main
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b33f5
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x8c]
call fcn.00404540
mov ebp, dword [esp + 0x1c]
lea eax, [ebp + 0xc]
lea ecx, [ebx + 0xb0]
cmp eax, ecx
je 0x4b3fe2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
jmp 0x4b3fe2
cmp edx, 2
jbe 0x4b34e4
mov edi, str.ST:V
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b34e4
mov edi, str.ST:V
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b34e4
mov edi, 0x6a2c8c
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b34e4
mov edi, 0x6a2c8c
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b34e4
mov edi, str.baseEF
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 7
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b34bd
mov edi, str.baseEF
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b34bd
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x8c]
call fcn.00404540
mov ebp, dword [esp + 0x1c]
lea eax, [ebp + 0x18]
lea ecx, [ebx + 0xb0]
cmp eax, ecx
je 0x4b3fe2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
jmp 0x4b3fe2
cmp edx, 1
jbe 0x4b3580
mov edi, str.JK2MP:
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3580
mov edi, str.JK2MP:
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3580
mov edi, str.basejk
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 0xc
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b3559
mov edi, str.basejk
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3559
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x8c]
call fcn.00404540
mov ebp, dword [esp + 0x1c]
lea eax, [ebp + 0xc]
lea ecx, [ebx + 0xb0]
cmp eax, ecx
je 0x4b3fe2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
jmp 0x4b3fe2
cmp edx, 5
jbe 0x4b36db
mov edi, str.Medal
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b36db
mov edi, str.Medal
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b36db
mov edi, 0x6a2c68
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b36db
mov edi, 0x6a2c68
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b36db
mov edi, str.Honor
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp + 0x1c]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b36db
mov edi, str.Honor
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b36db
mov edi, str.Allied
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x24]
mov eax, dword [ebp + 0x28]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b36db
mov edi, str.Allied
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b36db
mov edi, str.Assault
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x30]
mov eax, dword [ebp + 0x34]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b36db
mov edi, str.Assault
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b36db
mov edi, str.main
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 0xb
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b36a9
mov edi, str.main
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b36a9
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x8c]
call fcn.00404540
mov ebp, dword [esp + 0x1c]
mov cx, word [ebx + 8]
lea eax, [ebp + 0x3c]
mov word [ebx + 0xe4], cx
lea ecx, [ebx + 0xb0]
cmp eax, ecx
je 0x4b3fe2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
jmp 0x4b3fe2
cmp edx, 4
jbe 0x4b390b
mov edi, str.Medal
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b380a
mov edi, str.Medal
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b380a
mov edi, 0x6a2c68
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b380a
mov edi, 0x6a2c68
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b380a
mov edi, str.Honor
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp + 0x1c]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b380a
mov edi, str.Honor
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b380a
mov edi, str.Spearhead
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x24]
mov eax, dword [ebp + 0x28]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b380a
mov edi, str.Spearhead
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b380a
mov edi, str.mainta
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 0x15
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b37d8
mov edi, str.mainta
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b37d8
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x8c]
call fcn.00404540
mov ebp, dword [esp + 0x1c]
mov cx, word [ebx + 8]
lea eax, [ebp + 0x30]
mov word [ebx + 0xe4], cx
lea ecx, [ebx + 0xb0]
cmp eax, ecx
je 0x4b3fe2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
jmp 0x4b3fe2
cmp edx, 4
jbe 0x4b390b
mov edi, str.Medal
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b390b
mov edi, str.Medal
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b390b
mov edi, 0x6a2c68
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b390b
mov edi, 0x6a2c68
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b390b
mov edi, str.Honor:
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp + 0x1c]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b390b
mov edi, str.Honor:
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b390b
mov edi, str.Breakthrough
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x24]
mov eax, dword [ebp + 0x28]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b390b
mov edi, str.Breakthrough
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b390b
mov edi, str.mainta
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 0x1c
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b38fb
mov edi, str.mainta
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b38fb
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x8c]
call fcn.00404540
mov cx, word [ebx + 8]
mov word [ebx + 0xe4], cx
jmp 0x4b3fe2
cmp edx, 1
jbe 0x4b3b02
mov edi, str.SOF2MP
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b39c6
mov edi, str.SOF2MP
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b39c6
sub esp, 8
mov ecx, str.sof2mp
mov edx, esp
mov dword [ebx + 0xe8], 0xd
test ecx, ecx
mov dword [esp + 0x1c], esp
mov dword [edx], str.sof2mp
je 0x4b3970
mov edi, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b3972
xor ecx, ecx
lea esi, [ebx + 0x8c]
mov dword [edx + 4], ecx
mov ecx, esi
call fcn.004fde20
test eax, eax
jne 0x4b3990
push 0xffffffffffffffff
push eax
mov ecx, esi
call fcn.00404540
mov eax, dword [esp + 0x1c]
mov dx, word [ebx + 8]
add eax, 0xc
lea ecx, [ebx + 0xb0]
cmp eax, ecx
mov word [ebx + 0xe4], dx
je 0x4b3fe2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
jmp 0x4b3fe2
cmp edx, 1
jbe 0x4b3b02
mov edi, 0x6a2c10
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 0x4b39f5
mov edi, 0x6a2c10
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4b3a1e
mov edi, str.ETTV
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jne 0x4b3afe
mov esi, dword [ebp]
mov edi, str.ETTV
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3afe
sub esp, 8
mov eax, str.etmain
mov edx, esp
mov dword [ebx + 0xe8], 0x19
test eax, eax
mov dword [esp + 0x1c], esp
mov dword [edx], str.etmain
je 0x4b3a4e
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jmp 0x4b3a50
xor ecx, ecx
lea esi, [ebx + 0x8c]
mov dword [edx + 4], ecx
mov ecx, esi
call fcn.004fde20
test eax, eax
jne 0x4b3a91
mov ecx, dword [esi]
mov eax, dword [esi + 4]
sub eax, ecx
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
lea eax, [esp + 0x14]
jb 0x4b3a84
lea eax, [esp + 0x18]
mov edx, dword [eax]
add edx, ecx
push edx
push ecx
mov ecx, esi
call fcn.004045c0
mov ax, word [ebx + 8]
mov edx, dword [esp + 0x1c]
mov word [ebx + 0xe4], ax
lea ecx, [ebx + 0xb0]
lea eax, [edx + 0xc]
cmp eax, ecx
je 0x4b3ac2
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
mov edx, dword [esp + 0x1c]
mov edi, str.ETTV
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [edx]
repne scasb al, byte es:[edi]
mov edx, dword [edx + 4]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b3fe2
mov edi, str.ETTV
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3fe2
mov dword [ebx + 0xcc], 3
jmp 0x4b3fe2
mov edx, dword [esp + 0x18]
cmp edx, 3
jbe 0x4b3c32
mov edi, str.Elite
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebp]
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 4]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3c32
mov edi, str.Elite
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3c32
mov edi, str.Force
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3c32
mov edi, str.Force
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3c32
mov edi, 0x6a2bec
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp + 0x1c]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3c32
mov edi, 0x6a2bec
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3c32
mov edi, str.base
or ecx, 0xffffffff
mov dword [ebx + 0xe8], 0x1a
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b3c01
mov edi, str.base
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3c01
mov ecx, dword [ebx + 0x8c]
mov eax, dword [ebx + 0x90]
sub eax, ecx
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
lea eax, [esp + 0x14]
jb 0x4b3bec
lea eax, [esp + 0x18]
mov edx, dword [eax]
add edx, ecx
push edx
push ecx
lea ecx, [ebx + 0x8c]
call fcn.004045c0
mov ebp, dword [esp + 0x1c]
lea eax, [ebp + 0x24]
lea ecx, [ebx + 0xb0]
cmp eax, ecx
je 0x4b3c1f
mov edx, dword [eax + 4]
mov eax, dword [eax]
lea esi, [esp + 0x13]
push esi
push edx
push eax
call fcn.0041cfd0
mov eax, dword [ebx + 0xf0]
and al, 0xfb
mov dword [ebx + 0xf0], eax
jmp 0x4b3fe2
cmp edx, 1
jbe 0x4b3d90
mov edi, str.JAmp:
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 0x4b3c61
mov edi, str.JAmp:
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4b3c8a
mov edi, str._internal_JAmp:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jne 0x4b3d8c
mov esi, dword [ebp]
mov edi, str._internal_JAmp:
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3d8c
mov edi, str.basejk
or ecx, 0xffffffff
xor eax, eax
mov dword [ebx + 0xe8], 0x1b
repne scasb al, byte es:[edi]
mov esi, dword [ebx + 0x8c]
mov eax, dword [ebx + 0x90]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3cc0
mov edi, str.basejk
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x4b3cec
mov edi, str.basejka
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x90]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3d28
mov edi, str.basejka
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3d28
mov ecx, dword [ebx + 0x8c]
mov eax, dword [ebx + 0x90]
sub eax, ecx
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
lea eax, [esp + 0x14]
jb 0x4b3d13
lea eax, [esp + 0x18]
mov eax, dword [eax]
add eax, ecx
push eax
push ecx
lea ecx, [ebx + 0x8c]
call fcn.004045c0
mov ebp, dword [esp + 0x1c]
lea eax, [ebp + 0xc]
lea edi, [ebx + 0xb0]
cmp eax, edi
je 0x4b3fe2
mov ebp, dword [eax + 4]
mov eax, dword [eax]
mov esi, dword [edi]
cmp eax, ebp
je 0x4b3d68
cmp esi, dword [edi + 4]
je 0x4b3d64
mov cl, byte [eax]
inc eax
mov byte [esi], cl
inc esi
cmp eax, ebp
jne 0x4b3d44
mov eax, dword [edi + 4]
mov ecx, edi
push eax
push esi
call fcn.004045c0
jmp 0x4b3fe2
cmp eax, ebp
jne 0x4b3d79
mov eax, dword [edi + 4]
mov ecx, edi
push eax
push esi
call fcn.004045c0
jmp 0x4b3fe2
lea edx, [esp + 0x13]
mov ecx, edi
push edx
push ebp
push eax
call fcn.00436cb0
jmp 0x4b3fe2
mov edx, dword [esp + 0x18]
test edx, edx
jne 0x4b3f36
mov edi, str.Call_of_Duty
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x90]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3e06
mov edi, str.Call_of_Duty
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3e06
lea ecx, [ebx + 0x8c]
mov dword [ebx + 0xe8], 0x1f
mov dword [esp + 0x18], 0xffffffff
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
sub eax, edx
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
lea eax, [esp + 0x14]
jb 0x4b3df4
lea eax, [esp + 0x18]
mov ebp, dword [eax]
mov esi, edx
add esi, ebp
push esi
push edx
call fcn.004045c0
jmp 0x4b3fe2
test edx, edx
jne 0x4b3f36
mov edi, str.CoD:United_Offensive
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x90]
not ecx
dec ecx
sub eax, esi
cmp eax, ecx
jne 0x4b3e9e
mov edi, str.CoD:United_Offensive
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3e9e
mov dword [ebx + 0xe8], 0x2a
mov eax, dword [ebx + 0x90]
mov edi, dword [ebx + 0x8c]
mov ecx, eax
sub ecx, edi
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x14], ecx
cmp ecx, 0xffffffff
lea ecx, [esp + 0x14]
jb 0x4b3e6d
lea ecx, [esp + 0x18]
mov edx, dword [ecx]
mov esi, edi
add esi, edx
cmp edi, esi
je 0x4b3fe2
sub eax, esi
inc eax
push eax
push esi
push edi
call fcn.004333c0
mov eax, dword [ebx + 0x90]
add esp, 0xc
sub eax, esi
add eax, edi
mov dword [ebx + 0x90], eax
jmp 0x4b3fe2
test edx, edx
jne 0x4b3f36
mov edi, str.Call_of_Duty_2
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [ebx + 0x8c]
repne scasb al, byte es:[edi]
mov edx, dword [ebx + 0x90]
not ecx
dec ecx
sub edx, esi
cmp edx, ecx
jne 0x4b3f36
mov edi, str.Call_of_Duty_2
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b3f36
mov dword [ebx + 0xe8], 0x30
mov eax, dword [ebx + 0x90]
mov esi, dword [ebx + 0x8c]
mov ecx, eax
sub ecx, esi
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x14], ecx
cmp ecx, 0xffffffff
lea ecx, [esp + 0x14]
jb 0x4b3f05
lea ecx, [esp + 0x18]
mov edx, dword [ecx]
mov edi, esi
add edi, edx
cmp esi, edi
je 0x4b3fe2
sub eax, edi
inc eax
push eax
push edi
push esi
call fcn.004333c0
mov eax, dword [ebx + 0x90]
sub esi, edi
add esp, 0xc
add esi, eax
mov dword [ebx + 0x90], esi
jmp 0x4b3fe2
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
cmp ecx, eax
jne 0x4b3f87
mov ecx, ebx
call fcn.004a9b80
mov esi, eax
test esi, esi
je 0x4b3f87
mov edx, dword [esi + 4]
mov eax, dword [ebx + 0xf0]
mov dword [ebx + 0xe8], edx
mov cl, byte [esi + 9]
and ecx, 1
and al, 0x7f
shl ecx, 7
or ecx, eax
mov dword [ebx + 0xf0], ecx
mov dl, byte [esi + 8]
and edx, 1
and ecx, 0xfffffffb
shl edx, 2
or edx, ecx
mov dword [ebx + 0xf0], edx
jmp 0x4b3fe2
mov dword [ebx + 0xe8], 4
mov eax, dword [ebx + 0xb4]
mov esi, dword [ebx + 0xb0]
mov ecx, eax
sub ecx, esi
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x14], ecx
cmp ecx, 0xffffffff
lea ecx, [esp + 0x14]
jb 0x4b3fba
lea ecx, [esp + 0x18]
mov edx, dword [ecx]
mov edi, esi
add edi, edx
cmp esi, edi
je 0x4b3fe2
sub eax, edi
inc eax
push eax
push edi
push esi
call fcn.004333c0
mov eax, dword [ebx + 0xb4]
sub esi, edi
add esp, 0xc
add esi, eax
mov dword [ebx + 0xb4], esi
mov eax, dword [ebx + 0xb0]
mov ecx, dword [ebx + 0xb4]
lea edi, [ebx + 0xb0]
cmp eax, ecx
jne 0x4b40f9
sub esp, 0xc
mov esi, esp
mov dword [esp + 0x20], esp
mov dword [esp + 0x20], esi
lea ecx, [esp + 0x1f]
lea ebp, [esi + 8]
push 0
push ecx
mov dword [esi], 0
mov ecx, ebp
mov byte [esp + 0x138], 0x21
mov dword [esi + 4], 0
call fcn.00492050
push 8
mov byte [esp + 0x134], 0x23
call fcn.0050d330
mov dword [esi], eax
mov dword [esi + 4], eax
mov edx, dword [esi]
push ecx
add edx, 8
mov ecx, esp
mov dword [ebp], edx
mov eax, dword [esi + 4]
mov dword [esp + 0x28], esp
push str.shortversion
mov byte [eax], 0
mov byte [esp + 0x13c], 0x20
call fcn.00405b90
lea ecx, [esp + 0x40]
push ecx
lea ecx, [ebx + 0x28]
call fcn.0042fd10
cmp eax, edi
mov byte [esp + 0x124], 0x24
je 0x4b40d4
mov ebp, dword [eax + 4]
mov eax, dword [eax]
mov esi, dword [edi]
cmp eax, ebp
je 0x4b40a3
cmp esi, dword [edi + 4]
je 0x4b409f
mov dl, byte [eax]
inc eax
mov byte [esi], dl
inc esi
cmp eax, ebp
jne 0x4b408e
jmp 0x4b40a3
cmp eax, ebp
jne 0x4b40c6
mov ebp, dword [edi + 4]
cmp esi, ebp
je 0x4b40d4
mov eax, ebp
sub eax, ebp
inc eax
push eax
push ebp
push esi
call fcn.004333c0
mov eax, dword [edi + 4]
sub esi, ebp
add esp, 0xc
add esi, eax
mov dword [edi + 4], esi
jmp 0x4b40d4
lea ecx, [esp + 0x13]
push ecx
push ebp
push eax
mov ecx, edi
call fcn.00436cb0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
sub eax, ecx
mov byte [esp + 0x124], 0x25
push eax
push ecx
lea ecx, [esp + 0x3c]
call fcn.00402b70
mov byte [esp + 0x124], 0x20
mov edx, dword [edi + 4]
mov eax, dword [edi]
sub edx, eax
je 0x4b41a7
mov ecx, eax
mov al, byte [ecx]
cmp al, 0x56
je 0x4b41a4
cmp al, 0x76
je 0x4b41a4
push edi
lea eax, [esp + 0x30]
push 0x76
push eax
call fcn.00473b70
add esp, 0xc
cmp eax, edi
mov byte [esp + 0x124], 0x26
je 0x4b4191
mov ebp, dword [eax + 4]
mov eax, dword [eax]
mov esi, dword [edi]
cmp eax, ebp
je 0x4b4156
cmp esi, dword [edi + 4]
je 0x4b4152
mov cl, byte [eax]
inc eax
mov byte [esi], cl
inc esi
cmp eax, ebp
jne 0x4b4141
jmp 0x4b4156
cmp eax, ebp
jne 0x4b417b
mov ebp, dword [edi + 4]
cmp esi, ebp
je 0x4b4191
mov eax, ebp
sub eax, ebp
inc eax
je 0x4b416f
push eax
push ebp
push esi
call fcn.00510210
add esp, 0xc
mov eax, dword [edi + 4]
sub eax, ebp
add eax, esi
mov dword [edi + 4], eax
jmp 0x4b4191
mov dl, byte [esp + 0x2b]
lea ecx, [esp + 0x13]
push ecx
push ebp
push eax
mov ecx, edi
mov byte [esp + 0x1f], dl
call fcn.00404c60
lea ecx, [esp + 0x2c]
mov byte [esp + 0x124], 0x20
call fcn.00402340
jmp 0x4b41a7
mov byte [ecx], 0x76
lea eax, [ebx + 0x8c]
lea ecx, [ebx + 0x98]
push eax
call fcn.004044c0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x124], 0x1f
call fcn.00477e40
lea ecx, [esp + 0x4c]
mov byte [esp + 0x124], 0
call fcn.00402340
lea ecx, [esp + 0x40]
mov dword [esp + 0x124], 0xffffffff
call fcn.00477e40
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
mov al, 1
mov dword fs:[0], ecx
pop ebx
add esp, 0x118
ret 8