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

Disassembly:
sub esp, 0x74
push ebx
push ebp
push esi
push edi
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x30]
push ecx
call fcn.00419120
add esp, 8
test eax, eax
jne 0x42c7f1
fld dword [0x67fac8]
fstp dword [0x4465a4]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x18]
push edx
call fcn.00423ef0
mov eax, dword [0x17b6478]
mov edx, dword [0x47aee4]
imul eax, eax, 0x398
xor ecx, ecx
add esp, 4
cmp dword [0x17d5fa0], ecx
mov ebx, edx
sete cl
sar ebx, cl
mov ecx, dword [0x47b70c]
sar ecx, 1
sar edx, 1
push ebx
push ecx
push edx
lea edx, [eax + 0x471e24]
lea esi, [eax + 0x471e30]
lea ebp, [eax + 0x471e0c]
lea edi, [eax + 0x471e3c]
push edx
push ebp
mov eax, edi
mov ecx, esi
call fcn.0041e6d0
add esp, 0x14
mov eax, ebp
call fcn.00417f20
call fcn.00422b80
mov eax, dword [0x17be2a0]
inc eax
mov dword [0x17be2a0], eax
and eax, 0x1f
sub eax, 0x10
push eax
call fcn.0041d210
mov esi, dword [0x47aee4]
add esp, 4
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], eax
mov edi, 0x471ed0
xor ebx, ebx
cmp dword [edi - 0x54], ebx
je 0x42d401
mov eax, dword [0x17b6478]
cmp dword [esp + 0x2c], eax
je 0x42d401
cmp dword [edi - 0x5c], 0xffffffff
je 0x42d401
imul eax, eax, 0x398
fld dword [eax + 0x471e0c]
fsub dword [edi - 0xc4]
fstp dword [esp + 0x1c]
fld dword [eax + 0x471e10]
fsub dword [edi - 0xc0]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fld dword [esp + 0x1c]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
fcomp qword [0x441d08]
fnstsw ax
test ah, 0x41
jne 0x42c8fe
mov dword [edi], ebx
jmp 0x42d3fb
mov dword [edi], 1
fld dword [edi - 0xbc]
fadd qword [0x441930]
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x2c]
push ecx
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x24]
push eax
sub esp, 0xc
fstp dword [esp + 8]
fld dword [edi - 0xc0]
fstp dword [esp + 4]
fld dword [edi - 0xc4]
fstp dword [esp]
call fcn.004214c0
mov ecx, dword [esp + 0x34]
mov esi, dword [0x47aee4]
mov eax, dword [0x47b70c]
add esp, 0x1c
cmp ecx, esi
jge 0x42d3fb
mov ebp, dword [esp + 0x28]
cmp ebp, ebx
jl 0x42d3fb
mov edx, dword [esp + 0x20]
cmp edx, eax
jge 0x42d3fb
mov ebx, dword [esp + 0x30]
test ebx, ebx
js 0x42d3f9
sar esi, 1
mov dword [edi - 8], 1
cmp ecx, esi
jge 0x42c9ab
cmp ebp, esi
jle 0x42c9ab
sar eax, 1
cmp edx, eax
jge 0x42c9ab
cmp ebx, eax
jle 0x42c9ab
mov eax, 1
jmp 0x42c9ad
xor eax, eax
mov dword [edi - 4], eax
fld dword [edi - 0xc0]
call fcn.00439910
fld dword [edi - 0xc4]
mov esi, eax
call fcn.00439910
fld dword [edi - 0xbc]
mov ebp, eax
call fcn.00439910
push ebp
mov ecx, esi
call fcn.0041ace0
add esp, 4
mov ecx, eax
push ebp
mov eax, esi
call fcn.0041ac10
fld dword [edi - 0xa8]
movzx eax, byte [eax + 3]
mov edx, dword [edi - 0xac]
mov ecx, eax
shl ecx, 8
or ecx, eax
shl ecx, 8
or ecx, eax
add esp, 4
xor edx, dword [edi - 0x90]
mov dword [esp + 0x20], eax
mov dword [0x68c108], ecx
js 0x42ca29
fchs
fstp dword [esp + 0x1c]
fld dword [edi - 0xac]
jmp 0x42ca35
fstp dword [esp + 0x1c]
fld dword [edi - 0xac]
fchs
cmp dword [edi - 0x58], 0
fstp dword [esp + 0x24]
je 0x42d381
fld dword [edi - 0xc4]
fstp dword [edi - 0x178]
fld dword [edi - 0xc0]
fstp dword [edi - 0x174]
fld dword [edi - 0xbc]
fld qword [0x441ab8]
fadd st(1), st(0)
fxch st(1)
fstp dword [edi - 0x170]
mov eax, dword [edi - 0x178]
mov dword [edi - 0x2c8], eax
mov ecx, dword [edi - 0x174]
mov dword [edi - 0x2c4], ecx
mov edx, dword [edi - 0x170]
mov dword [edi - 0x2c0], edx
mov eax, dword [edi - 0x178]
mov dword [edi - 0x274], eax
mov ecx, dword [edi - 0x174]
mov dword [edi - 0x270], ecx
mov edx, dword [edi - 0x170]
mov dword [edi - 0x26c], edx
mov eax, dword [edi - 0x178]
mov dword [edi - 0x370], eax
mov ecx, dword [edi - 0x174]
mov dword [edi - 0x36c], ecx
mov edx, dword [edi - 0x170]
mov dword [edi - 0x368], edx
fld dword [edi - 0xac]
fld qword [0x4419b8]
fmul st(1), st(0)
fxch st(1)
fsubr dword [edi - 0xc4]
fstp dword [edi - 0x220]
fld dword [edi - 0xac]
fmul st(1)
fadd dword [edi - 0xc4]
fstp dword [edi - 0x1cc]
fld dword [edi - 0xc0]
fld dword [edi - 0xa8]
fmul st(2)
fsubp st(1)
fstp dword [edi - 0x21c]
fmul dword [edi - 0xa8]
fadd dword [edi - 0xc0]
fstp dword [edi - 0x1c8]
cmp dword [edi - 0x70], 0
fld dword [esp + 0x1c]
fld dword [esp + 0x24]
fld dword [edi - 0xbc]
je 0x42cbb5
fadd qword [0x441d00]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fst dword [edi - 0x26c]
fstp dword [edi - 0x368]
fld st(1)
fmul st(3)
fld dword [edi - 0x220]
fsub st(1)
fstp dword [edi - 0x220]
fsubr dword [edi - 0x1cc]
fstp dword [edi - 0x1cc]
fld st(0)
fmul st(3)
fld dword [edi - 0x21c]
fsub st(1)
fstp dword [edi - 0x21c]
fsubr dword [edi - 0x1c8]
fstp dword [edi - 0x1c8]
fld dword [edi - 0xbc]
fadd qword [0x441cf8]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
jmp 0x42cbe3
fadd qword [0x441940]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fst dword [edi - 0x26c]
fstp dword [edi - 0x368]
fld dword [edi - 0xbc]
fadd qword [0x441bd8]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fst dword [edi - 0x1c4]
lea esi, [edi - 0x214]
fstp dword [edi - 0x218]
fld dword [edi - 0xac]
fld qword [0x441b78]
fmul st(1), st(0)
fxch st(1)
fstp dword [edi - 0x16c]
fmul dword [edi - 0xa8]
fstp dword [edi - 0x168]
mov eax, dword [edi - 0x16c]
mov dword [edi - 0x2bc], eax
fld st(1)
mov ecx, dword [edi - 0x168]
fld qword [0x441ac0]
mov dword [edi - 0x2b8], ecx
fmul st(1), st(0)
mov edx, dword [edi - 0x164]
fxch st(1)
mov dword [edi - 0x2b4], edx
mov eax, dword [edi - 0x16c]
mov dword [edi - 0x268], eax
mov ecx, dword [edi - 0x168]
mov dword [edi - 0x264], ecx
mov edx, dword [edi - 0x164]
mov dword [edi - 0x260], edx
mov eax, dword [edi - 0x16c]
mov dword [esi], eax
mov ecx, dword [edi - 0x168]
mov dword [esi + 4], ecx
mov edx, dword [edi - 0x164]
mov dword [esi + 8], edx
mov eax, dword [edi - 0x16c]
mov dword [edi - 0x1c0], eax
mov ecx, dword [edi - 0x168]
mov dword [edi - 0x1bc], ecx
mov edx, dword [edi - 0x164]
mov dword [edi - 0x1b8], edx
fstp dword [edi - 0x2b0]
fld st(1)
fmul st(1)
fstp dword [edi - 0x2ac]
mov eax, dword [edi - 0x2b0]
mov dword [edi - 0x208], eax
mov ecx, dword [edi - 0x2ac]
mov dword [edi - 0x204], ecx
mov edx, dword [edi - 0x2a8]
mov dword [edi - 0x200], edx
mov eax, dword [edi - 0x2b0]
mov dword [edi - 0x1b4], eax
mov ecx, dword [edi - 0x2ac]
mov dword [edi - 0x1b0], ecx
mov edx, dword [edi - 0x2a8]
mov dword [edi - 0x1ac], edx
fld dword [edi - 0x94]
fmul st(1)
fstp dword [edi - 0x160]
fld dword [edi - 0x90]
fmul st(1)
fstp dword [edi - 0x15c]
fld dword [edi - 0x8c]
fmul st(1)
fstp dword [edi - 0x158]
mov eax, dword [edi - 0x160]
mov dword [edi - 0x25c], eax
mov ecx, dword [edi - 0x15c]
mov dword [edi - 0x258], ecx
mov edx, dword [edi - 0x158]
mov dword [edi - 0x254], edx
mov eax, dword [edi - 0x2a4]
mov dword [edi - 0x1fc], eax
mov ecx, dword [edi - 0x2a0]
mov dword [edi - 0x1f8], ecx
mov edx, dword [edi - 0x29c]
mov dword [edi - 0x1f4], edx
mov eax, dword [edi - 0x2a4]
mov dword [edi - 0x1a8], eax
mov ecx, dword [edi - 0x2a0]
mov dword [edi - 0x1a4], ecx
mov edx, dword [edi - 0x29c]
mov dword [edi - 0x1a0], edx
fld dword [edi - 0xa0]
fmul st(1)
fstp dword [edi - 0x154]
fld dword [edi - 0x9c]
fmul st(1)
fstp dword [edi - 0x150]
fmul dword [edi - 0x98]
fstp dword [edi - 0x14c]
mov eax, dword [edi - 0x154]
mov dword [edi - 0x250], eax
mov ecx, dword [edi - 0x150]
mov dword [edi - 0x24c], ecx
mov edx, dword [edi - 0x14c]
mov ecx, dword [esp + 0x2c]
mov dword [edi - 0x248], edx
mov eax, dword [edi - 0x5c]
cmp dword [eax*4 + 0x17d6230], ecx
jne 0x42ceb5
fld dword [edi - 0xc4]
lea eax, [edi - 0x124]
fxch st(2)
fmul st(3)
fsubp st(2)
fxch st(1)
fstp dword [eax]
fmulp st(1)
fsubr dword [edi - 0xc0]
fstp dword [edi - 0x120]
cmp dword [edi - 0x70], 0
fld dword [edi - 0xbc]
je 0x42ce2f
fadd qword [0x441940]
jmp 0x42ce35
fadd qword [0x441930]
fstp dword [edi - 0x11c]
mov edx, dword [edi - 0x2bc]
mov dword [edi - 0x118], edx
mov ecx, dword [edi - 0x2b8]
mov dword [edi - 0x114], ecx
mov edx, dword [edi - 0x2b4]
mov dword [edi - 0x110], edx
mov ecx, dword [edi - 0x2b0]
mov dword [edi - 0x10c], ecx
mov edx, dword [edi - 0x2ac]
mov dword [edi - 0x108], edx
mov ecx, dword [edi - 0x2a8]
mov dword [edi - 0x104], ecx
mov edx, dword [edi - 0x2a4]
mov dword [edi - 0x100], edx
mov ecx, dword [edi - 0x2a0]
mov dword [edi - 0xfc], ecx
mov edx, dword [edi - 0x29c]
push 0
push 1
mov dword [edi - 0xf8], edx
call fcn.0041f8f0
add esp, 8
jmp 0x42cebb
fstp st(2)
fstp st(0)
fstp st(0)
fld dword [0x441cf4]
fcom dword [edi - 0xb8]
fnstsw ax
test ah, 5
jnp 0x42cf05
fld dword [0x441cf0]
fcom dword [edi - 0xb8]
fnstsw ax
test ah, 0x41
je 0x42cf03
fxch st(1)
fcomp dword [edi - 0xb4]
fnstsw ax
test ah, 5
jnp 0x42cf05
fcomp dword [edi - 0xb4]
fnstsw ax
test ah, 0x41
jne 0x42d016
jmp 0x42cf07
fstp st(1)
fstp st(0)
mov eax, dword [0x17d6140]
mov ecx, eax
and ecx, 0x1ff
cmp dword [edi - 0x70], 0
mov dword [esp + 0x24], ecx
fild dword [esp + 0x24]
fsub qword [0x441bc8]
fstp dword [esp + 0x24]
fld dword [edi - 0x90]
fmul dword [edi - 0xb4]
fld dword [edi - 0xb8]
fmul dword [edi - 0x94]
faddp st(1)
jne 0x42cf4e
fld qword [0x441ce8]
jmp 0x42cf54
fld qword [0x441ce0]
fmul st(1), st(0)
and eax, 0x3ff
fld dword [esp + 0x24]
sub esp, 0xc
fld st(0)
lea ecx, [edi - 0x1fc]
fmulp st(3)
lea edx, [edi - 0x208]
fxch st(2)
fstp dword [esp + 0x28]
fld dword [edi - 0xac]
fmul dword [edi - 0xb8]
fld dword [edi - 0xa8]
fmul dword [edi - 0xb4]
faddp st(1)
fmulp st(1)
fmulp st(1)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
cmp eax, 0x1ff
jle 0x42cfcd
fchs
fstp dword [esp + 8]
fld dword [esp + 0x28]
fstp dword [esp + 4]
fldz
fstp dword [esp]
call fcn.00421b20
fld dword [esp + 0x30]
fstp dword [esp + 8]
fld dword [esp + 0x28]
fchs
jmp 0x42cff3
fstp dword [esp + 8]
fld dword [esp + 0x28]
fchs
fstp dword [esp + 4]
fldz
fstp dword [esp]
call fcn.00421b20
fld dword [esp + 0x30]
fchs
fstp dword [esp + 8]
fld dword [esp + 0x28]
fstp dword [esp + 4]
lea ecx, [edi - 0x1a8]
fldz
lea edx, [edi - 0x1b4]
lea esi, [edi - 0x1c0]
fstp dword [esp]
call fcn.00421b20
add esp, 0xc
mov ecx, dword [edi - 0x64]
test ecx, ecx
jne 0x42d022
cmp dword [edi + 0x10], ecx
jne 0x42d02b
cmp ecx, 3
je 0x42d02b
xor eax, eax
jmp 0x42d030
mov eax, 1
mov edx, dword [esp + 0x34]
fld dword [0x67fac8]
add edx, eax
fsub dword [edx*4 + 0x471ea0]
fstp dword [esp + 0x1c]
fldz
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
test ah, 5
jp case.default.0x42d063
cmp ecx, 3
ja case.default.0x42d063
jmp dword [ecx*4 + 0x42f86c]
sub esp, 0xc
fxch st(1)
cmp dword [edi + 0x10], 0
fst dword [esp + 8]
lea ecx, [edi - 0x250]
fxch st(1)
lea edx, [edi - 0x25c]
lea esi, [edi - 0x268]
je 0x42d0b1
fchs
fsub qword [0x441930]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.00421b20
add esp, 0xc
jmp 0x42d13e
fmul qword [0x4419d0]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.00421b20
add esp, 0xc
jmp 0x42d13e
fxch st(1)
sub esp, 0xc
fst dword [esp + 8]
fxch st(1)
fstp dword [esp + 4]
lea ecx, [edi - 0x250]
lea edx, [edi - 0x25c]
lea esi, [edi - 0x268]
fstp dword [esp]
call fcn.00421b20
add esp, 0xc
jmp 0x42d13e
fxch st(1)
sub esp, 0xc
fst dword [esp + 8]
fxch st(1)
fmul qword [0x441b60]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
jmp 0x42d0db
fxch st(1)
sub esp, 0xc
fst dword [esp + 8]
fxch st(1)
fadd qword [0x441b18]
fmul qword [0x441940]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
jmp 0x42d0db
fstp st(1)
fstp st(0)
mov eax, dword [edi - 0x268]
mov dword [edi - 0x364], eax
mov ecx, dword [edi - 0x264]
mov dword [edi - 0x360], ecx
mov edx, dword [edi - 0x260]
mov dword [edi - 0x35c], edx
mov eax, dword [edi - 0x25c]
mov dword [edi - 0x358], eax
mov ecx, dword [edi - 0x258]
mov dword [edi - 0x354], ecx
mov edx, dword [edi - 0x254]
mov dword [edi - 0x350], edx
mov eax, dword [edi - 0x250]
mov dword [edi - 0x34c], eax
mov ecx, dword [edi - 0x24c]
mov dword [edi - 0x348], ecx
mov edx, dword [edi - 0x248]
mov dword [edi - 0x344], edx
fld dword [edi - 0x364]
fld qword [0x441cd8]
push 0
fmul st(1), st(0)
push 1
fxch st(1)
lea eax, [edi - 0x178]
fstp dword [edi - 0x364]
fld dword [edi - 0x360]
fmul st(1)
fstp dword [edi - 0x360]
fld dword [edi - 0x35c]
fmul st(1)
fstp dword [edi - 0x35c]
fld dword [edi - 0x358]
fmul st(1)
fstp dword [edi - 0x358]
fld dword [edi - 0x354]
fmul st(1)
fstp dword [edi - 0x354]
fld dword [edi - 0x350]
fmul st(1)
fstp dword [edi - 0x350]
fld dword [edi - 0x34c]
fmul st(1)
fstp dword [edi - 0x34c]
fld dword [edi - 0x348]
fmul st(1)
fstp dword [edi - 0x348]
fmul dword [edi - 0x344]
fstp dword [edi - 0x344]
call fcn.0041f8f0
push 0
push 1
lea eax, [edi - 0x2c8]
call fcn.0041f8f0
push 0
push 1
lea eax, [edi - 0x274]
call fcn.0041f8f0
push 0
push 1
lea eax, [edi - 0x220]
call fcn.0041f8f0
push 0
push 1
lea eax, [edi - 0x1cc]
call fcn.0041f8f0
add esp, 0x28
cmp dword [edi - 0x64], 1
jne 0x42d364
fild dword [esp + 0x20]
movzx eax, byte [edi - 0x60]
mov dword [esp + 0x14], eax
movzx edx, byte [edi - 0x5f]
fdiv qword [0x441cd0]
push 0
push 1
fstp dword [esp + 0x24]
fild dword [esp + 0x1c]
fld dword [esp + 0x24]
fnstcw word [esp + 0x1c]
fld st(0)
movzx eax, word [esp + 0x1c]
fmulp st(2)
or eax, 0xc00
fxch st(1)
mov dword [esp + 0x40], eax
fldcw word [esp + 0x40]
fistp dword [esp + 0x40]
mov cl, byte [esp + 0x40]
mov dword [esp + 0x40], edx
mov byte [0x68c108], cl
fldcw word [esp + 0x1c]
movzx ecx, byte [edi - 0x5e]
fild dword [esp + 0x40]
fnstcw word [esp + 0x1c]
fmul st(1)
movzx eax, word [esp + 0x1c]
or eax, 0xc00
mov dword [esp + 0x40], eax
fldcw word [esp + 0x40]
fistp dword [esp + 0x40]
mov al, byte [esp + 0x40]
mov byte [0x68c109], al
mov dword [esp + 0x40], ecx
fldcw word [esp + 0x1c]
fild dword [esp + 0x40]
fnstcw word [esp + 0x1c]
fmulp st(1)
movzx eax, word [esp + 0x1c]
or eax, 0xc00
mov dword [esp + 0x40], eax
lea eax, [edi - 0x370]
fldcw word [esp + 0x40]
fistp dword [esp + 0x40]
mov dl, byte [esp + 0x40]
mov byte [0x68c10a], dl
fldcw word [esp + 0x1c]
call fcn.0041f8f0
mov esi, dword [0x47aee4]
add esp, 8
mov dword [0x68c108], 0x7f7f7f
jmp 0x42d401
push 0
push 1
lea eax, [edi - 0x370]
call fcn.0041f8f0
mov esi, dword [0x47aee4]
add esp, 8
jmp 0x42d401
mov ecx, dword [edi - 0xc4]
mov dword [edi - 0x31c], ecx
mov edx, dword [edi - 0xc0]
lea eax, [edi - 0x31c]
mov dword [eax + 4], edx
mov ecx, dword [edi - 0xbc]
mov dword [eax + 8], ecx
fld dword [edi - 0xac]
fld qword [0x441b78]
push 0
fmul st(1), st(0)
push 1
fxch st(1)
fstp dword [edi - 0x310]
fmul dword [edi - 0xa8]
fstp dword [edi - 0x30c]
fld dword [esp + 0x24]
fld qword [0x441ac0]
fmul st(1), st(0)
fxch st(1)
fstp dword [edi - 0x304]
fmul dword [esp + 0x2c]
fstp dword [edi - 0x300]
call fcn.0041f8f0
mov esi, dword [0x47aee4]
add esp, 8
jmp 0x42d401
xor ebx, ebx
mov dword [edi - 4], ebx
mov dword [edi - 8], ebx
inc dword [esp + 0x2c]
add dword [esp + 0x34], 0xe6
add edi, 0x398
cmp edi, 0x4791d0
jne 0x42c890
mov edi, dword [0x17b63d8]
dec edi
mov dword [0x68c108], 0x7f7f7f
mov ebx, 0xfffffffc
js 0x42d4ad
mov esi, edi
imul esi, esi, 0x54
add esi, 0x17be3c0
mov eax, dword [0x17b6478]
fld dword [esi]
imul eax, eax, 0x398
fsub dword [eax + 0x471e0c]
fstp dword [esp + 0x4c]
fld dword [esi + 4]
fsub dword [eax + 0x471e10]
fstp dword [esp + 0x50]
cmp dword [esi + 0x4c], ebx
je 0x42d4a1
fld dword [esp + 0x50]
fld dword [esp + 0x4c]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
fcomp qword [0x441d08]
fnstsw ax
test ah, 0x41
jp 0x42d4a1
mov eax, esi
call fcn.0041dc60
test eax, eax
je 0x42d4a1
push 0
push 1
mov eax, esi
call fcn.0041f8f0
add esp, 8
sub esi, 0x54
dec edi
jns 0x42d442
mov esi, dword [0x47aee4]
xor edi, edi
cmp dword [0x17c0f54], edi
jle 0x42d52a
mov eax, dword [0x17b6340]
add eax, edi
and eax, 0x7f
mov dword [esp + 0x18], eax
shl eax, 5
fld dword [eax + 0x17d4fb8]
mov ecx, dword [eax + 0x17d4fbc]
fsub dword [0x67fac8]
push ecx
sub esp, 0x10
fadd qword [0x441940]
fmul qword [0x441a70]
fstp dword [esp + 0x4c]
fld dword [esp + 0x4c]
fstp dword [esp + 0xc]
fld dword [eax + 0x17d4fa8]
fstp dword [esp + 8]
fld dword [eax + 0x17d4fa4]
fstp dword [esp + 4]
fld dword [eax + 0x17d4fa0]
fstp dword [esp]
call fcn.00421140
inc edi
add esp, 0x14
cmp edi, dword [0x17c0f54]
jl 0x42d4b7
mov esi, dword [0x47aee4]
mov ebp, dword [0x47b70c]
mov ebx, 1
cmp dword [0x17d6180], ebx
jne 0x42d57a
mov ecx, dword [0x17c0f2c]
test ecx, ecx
js 0x42d57a
mov edx, dword [0x17b6478]
imul edx, edx, 0x398
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [0x17c0f30]
mov dword [eax + 4], ecx
mov ecx, dword [0x17c0f34]
mov dword [eax + 8], ecx
mov eax, dword [edx + 0x471e70]
call fcn.00420f50
add esp, 0xc
fldz
mov eax, esi
fst dword [esp + 0x58]
sar eax, 1
fst dword [esp + 0x5c]
push eax
fld dword [0x441cc8]
mov edx, ebp
fstp dword [esp + 0x64]
sar edx, 1
fld1
push edx
fst dword [esp + 0x54]
push eax
fst dword [esp + 0x80]
lea eax, [esp + 0x58]
fstp dword [esp + 0x78]
push eax
lea ecx, [esp + 0x68]
push ecx
lea eax, [esp + 0x78]
fst dword [esp + 0x64]
lea ecx, [esp + 0x84]
fst dword [esp + 0x68]
fst dword [esp + 0x84]
fst dword [esp + 0x8c]
fst dword [esp + 0x78]
fstp dword [esp + 0x7c]
call fcn.0041e6d0
add esp, 0x14
cmp dword [0x17d5fa4], 0
jne 0x42ec1d
mov edi, dword [0x17b6478]
imul edi, edi, 0x398
cmp dword [edi + 0x471e78], 0
je 0x42ec1d
cmp dword [0x17d5fa0], 0
jne 0x42d642
mov edx, dword [0x16a68c8]
push 0xffffffffffffffff
push 0x10000
push 0x10000
shl ebp, 0xf
push ebp
push 0x80000
push 0x80000
push 0x10
push 0x40
mov ecx, 0x10
jmp 0x42d6eb
fld dword [0x67fac8]
fld dword [edi + 0x471ea0]
fcomp st(1)
fnstsw ax
test ah, 1
jne 0x42d684
mov eax, dword [edi + 0x471e48]
lea eax, [eax + eax*8]
fld dword [eax*8 + 0x44660c]
fadd dword [edi + 0x471ea0]
fsubrp st(1)
fdiv dword [eax*8 + 0x44660c]
fmul qword [0x4419b8]
fadd qword [0x441cc0]
jmp 0x42d688
fstp st(0)
fld1
fstp dword [esp + 0x1c]
push 0xffffffffffffffff
fild dword [0x47b70c]
fmul qword [0x441cb8]
fld dword [esp + 0x20]
fld st(0)
fmulp st(2)
fxch st(1)
call fcn.00439910
fild dword [0x47aee4]
push eax
fmul qword [0x441cb0]
fmulp st(1)
call fcn.00439910
mov edi, dword [edi + 0x471e48]
push eax
shl ebp, 0xf
push ebp
push 0x12c0000
push 0x1900000
lea ecx, [edi + edi*8]
mov edx, dword [ecx*8 + 0x4465f0]
push 0x320
push 0xc80
mov ecx, 0x258
mov eax, esi
push edx
shl eax, 0xf
call fcn.00421660
mov edx, dword [0x17b6478]
mov eax, edx
imul eax, eax, 0x398
mov eax, dword [eax + 0x471e74]
add esp, 0x24
cmp dword [eax*4 + 0x17d6230], edx
jne 0x42d7b1
fld dword [0x441cac]
fstp dword [0x17ae5e0]
fldz
fst dword [0x17ae5e4]
fld dword [0x441ca8]
fstp dword [0x17ae5e8]
fld dword [0x441ca4]
fstp dword [0x17ae5ec]
fst dword [0x17ae5f0]
fst dword [0x17ae5f4]
fst dword [0x17ae5f8]
fst dword [0x17ae5fc]
fld dword [0x441ca0]
fst dword [0x17ae600]
fstp dword [0x17ae608]
fst dword [0x17ae604]
fstp dword [0x17ae60c]
test eax, eax
jne 0x42d78e
mov ecx, dword [0x17d620c]
mov dword [0x17ae630], ecx
jmp 0x42d79a
mov edx, dword [0x17d6208]
mov dword [0x17ae630], edx
push 0
push 0
mov eax, 0x17ae5e0
call fcn.0041f8f0
mov edx, dword [0x17b6478]
add esp, 8
fld dword [0x17b63dc]
mov ebp, 8
fld dword [0x67fac8]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x1c]
fldz
fcom dword [esp + 0x1c]
fnstsw ax
test ah, 5
jp 0x42da61
fld dword [0x441ca4]
sub esp, 0xc
fstp dword [0x17ae5ec]
mov ecx, 0x17ae604
mov edx, 0x17ae5f8
fst dword [0x17ae5f0]
mov esi, 0x17ae5ec
fst dword [0x17ae5f4]
fst dword [0x17ae5f8]
fst dword [0x17ae5fc]
fld dword [0x441ca0]
fst dword [0x17ae600]
fstp dword [0x17ae608]
fst dword [0x17ae604]
fst dword [0x17ae60c]
fst dword [esp + 8]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.00421b20
add esp, 0xc
cmp dword [0x17d6180], 0
jne 0x42d86d
fld dword [0x441c9c]
fstp dword [0x17ae5e0]
fld dword [0x441c98]
fstp dword [0x17ae5e4]
fld dword [0x441c94]
jmp 0x42d887
fld dword [0x441c90]
fstp dword [0x17ae5e0]
fld dword [0x441c8c]
fstp dword [0x17ae5e4]
fldz
mov eax, dword [0x17d61b8]
fstp dword [0x17ae5e8]
mov dword [0x17ae630], eax
push 0
push 0
mov eax, 0x17ae5e0
call fcn.0041f8f0
mov ecx, dword [0x17b6478]
imul ecx, ecx, 0x398
add esp, 8
cmp dword [ecx + 0x471e8c], 0
je 0x42d936
cmp dword [0x17d6180], ebx
jne 0x42d8e5
fld dword [0x441c88]
fstp dword [0x17ae5e0]
fld dword [0x441c98]
fstp dword [0x17ae5e4]
fld dword [0x441c94]
jmp 0x42d8ff
fld dword [0x441c84]
fstp dword [0x17ae5e0]
fld dword [0x441c8c]
fstp dword [0x17ae5e4]
fldz
mov eax, dword [0x17b63d0]
fstp dword [0x17ae5e8]
mov edx, dword [0x17d61bc]
mov dword [0x68c108], eax
push 0
push 0
mov eax, 0x17ae5e0
mov dword [0x17ae630], edx
call fcn.0041f8f0
add esp, 8
mov dword [0x68c108], 0x7f7f7f
mov eax, dword [0x17b6478]
imul eax, eax, 0x398
cmp dword [eax + 0x471e94], 0
jne 0x42d953
cmp dword [eax + 0x471e90], 0
je 0x42d9c3
cmp dword [0x17d6180], 2
jne 0x42d97c
fld dword [0x441c80]
fstp dword [0x17ae5e0]
fld dword [0x441c98]
fstp dword [0x17ae5e4]
fld dword [0x441c94]
jmp 0x42d990
fld dword [0x441c8c]
fst dword [0x17ae5e0]
fstp dword [0x17ae5e4]
fldz
mov eax, dword [eax + 0x471e48]
fstp dword [0x17ae5e8]
lea ecx, [eax + eax*8]
mov edx, dword [ecx*8 + 0x4465e8]
mov eax, dword [edx*4 + 0x17d61a0]
mov dword [0x17ae630], eax
push 0
push 0
mov eax, 0x17ae5e0
call fcn.0041f8f0
add esp, 8
mov ecx, dword [0x17b6478]
imul ecx, ecx, 0x398
cmp dword [ecx + 0x471e98], 0
je 0x42da3e
cmp dword [0x17d6180], 3
jne 0x42da01
fld dword [0x441cac]
fstp dword [0x17ae5e0]
fld dword [0x441c98]
fstp dword [0x17ae5e4]
fld dword [0x441c94]
jmp 0x42da1b
fld dword [0x441c88]
fstp dword [0x17ae5e0]
fld dword [0x441c8c]
fstp dword [0x17ae5e4]
fldz
mov edx, dword [0x17d61cc]
fstp dword [0x17ae5e8]
push 0
push 0
mov eax, 0x17ae5e0
mov dword [0x17ae630], edx
call fcn.0041f8f0
add esp, 8
fld dword [esp + 0x1c]
mov ebx, dword [0x17b63d0]
fst dword [0x17ae5e0]
fstp dword [0x17ae5e4]
fld dword [0x67fac8]
fldz
jmp 0x42dba7
mov ecx, dword [0x17d6180]
mov eax, edx
imul eax, eax, 0x398
cmp dword [eax + 0x471e6c], ecx
je 0x42daed
fstp st(0)
push 0x14
fstp st(0)
mov dword [eax + 0x471e6c], ecx
mov byte [esp + 0x40], 6
mov byte [esp + 0x41], dl
mov dword [esp + 0x44], ecx
call dword [0x4465dc]
mov esi, eax
add esp, 4
test esi, esi
jne 0x42daaa
call dword [0x4465e4]
jmp 0x42db84
push ebp
call dword [0x4465dc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42dac0
call dword [0x4465e4]
mov dword [esi + 8], edi
test edi, edi
jne 0x42dad8
push esi
call dword [0x4465e0]
add esp, 4
xor esi, esi
jmp 0x42db84
mov eax, dword [esp + 0x3c]
mov dword [edi], eax
mov ecx, dword [esp + 0x40]
mov dword [edi + 4], ecx
mov dword [esi + 4], ebx
jmp 0x42db74
mov ebx, dword [0x17b63d0]
cmp dword [eax + 0x471e70], ebx
je 0x42db9b
mov dl, byte [0x17b6478]
fstp st(0)
push 0x14
fstp st(0)
mov dword [eax + 0x471e70], ebx
mov byte [esp + 0x48], 7
mov byte [esp + 0x49], dl
mov dword [esp + 0x4c], ebx
call dword [0x4465dc]
mov esi, eax
add esp, 4
test esi, esi
jne 0x42db35
call dword [0x4465e4]
jmp 0x42db84
push ebp
call dword [0x4465dc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42db4b
call dword [0x4465e4]
mov dword [esi + 8], edi
test edi, edi
jne 0x42db60
push esi
call dword [0x4465e0]
add esp, 4
xor esi, esi
jmp 0x42db84
mov eax, dword [esp + 0x44]
mov dword [edi], eax
mov ecx, dword [esp + 0x48]
mov dword [edi + 4], ecx
mov dword [esi + 4], 1
mov dword [esi], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0xc], ebp
push esi
call fcn.00434610
fld dword [0x67fac8]
fldz
mov ebx, dword [0x17b63d0]
add esp, 4
fst dword [0x17ae5e0]
fst dword [0x17ae5e4]
fild dword [0x17be2a8]
mov esi, dword [0x17b6478]
fld qword [0x441c78]
imul esi, esi, 0x398
fmul st(1), st(0)
fld qword [0x441ba8]
fsubrp st(2)
fld dword [0x17ae5e0]
cmp dword [esi + 0x471e80], 0
faddp st(2)
fxch st(1)
fstp dword [0x17ae5e0]
fimul dword [0x17d6188]
fsubr qword [0x441c70]
fadd dword [0x17ae5e4]
fstp dword [0x17ae5e4]
je 0x42dc14
fld dword [0x17ae5e4]
fld dword [esi + 0x471e20]
fmul qword [0x441c68]
fsubp st(1)
fstp dword [0x17ae5e4]
fld dword [esi + 0x471e18]
fabs
fstp dword [esp + 0x38]
fld dword [esi + 0x471e1c]
fabs
fstp dword [esp + 0x34]
fld dword [esp + 0x38]
fld dword [esp + 0x34]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x42dc41
fstp st(0)
jmp 0x42dc43
fstp st(1)
mov eax, dword [0x17d6140]
fstp dword [esp + 0x34]
mov edx, eax
and edx, 0x1ff
mov dword [esp + 0x38], edx
fild dword [esp + 0x38]
and eax, 0x3ff
fsub qword [0x441bc8]
fmul dword [esp + 0x34]
fstp dword [0x17ae5e8]
fld dword [0x17ae5e8]
cmp eax, 0x1ff
jle 0x42dc86
fdiv qword [0x441c60]
jmp 0x42dc8c
fdiv qword [0x441c58]
fstp dword [0x17ae5e8]
fld dword [0x441c50]
fstp dword [0x17ae5ec]
fst dword [0x17ae5f0]
fst dword [0x17ae5f4]
fst dword [0x17ae5f8]
fst dword [0x17ae5fc]
fld dword [0x441c4c]
fst dword [0x17ae600]
fstp dword [0x17ae608]
fst dword [0x17ae604]
fst dword [0x17ae60c]
fld dword [esi + 0x471e14]
call fcn.00439910
fld dword [esi + 0x471e10]
mov edi, eax
call fcn.00439910
fld dword [esi + 0x471e0c]
mov ebp, eax
shl ebp, 9
call fcn.00439910
add ebp, eax
mov eax, dword [ebp*4 + 0x4fb760]
mov ecx, eax
movzx edx, byte [ecx + 1]
cmp edi, edx
jle 0x42dd2b
mov dl, byte [ecx]
test dl, dl
je 0x42dd62
movzx edx, dl
lea ecx, [ecx + edx*4]
movzx edx, byte [ecx + 3]
cmp edi, edx
jl 0x42dd62
movzx edx, byte [ecx + 1]
cmp edi, edx
jg 0x42dd0f
movzx ecx, byte [ecx + 1]
movzx edx, byte [eax + 1]
cmp ecx, edx
jl 0x42dd53
movzx edx, byte [eax + 2]
cmp ecx, edx
jle 0x42dd66
mov dl, byte [eax]
test dl, dl
je 0x42dd66
movzx edx, dl
lea eax, [eax + edx*4]
movzx edx, byte [eax + 1]
cmp ecx, edx
jge 0x42dd37
movzx edx, byte [eax + 3]
cmp ecx, edx
jge 0x42dd72
sub ecx, edx
lea eax, [eax + ecx*4]
jmp 0x42dd74
mov ecx, edi
jmp 0x42dd2f
movzx edx, byte [eax + 1]
sub ecx, edx
lea eax, [eax + ecx*4 + 4]
jmp 0x42dd74
xor eax, eax
movzx ecx, byte [eax + 3]
mov eax, dword [0x17d6180]
mov dword [esp + 0x20], ecx
cmp eax, 3
ja case.default.0x42dd8a
jmp dword [eax*4 + 0x42f87c]
cmp dword [esi + 0x471ee0], 0
je 0x42dec1
fld dword [esi + 0x471ea4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x42df3a
fld dword [esi + 0x471ea4]
fsubrp st(2)
fxch st(1)
fstp dword [esp + 0x1c]
fld dword [0x441c48]
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 1
jne 0x42dde4
fxch st(1)
fst dword [esp + 0x24]
fld1
fsubrp st(2)
fxch st(1)
jmp 0x42de38
fld dword [0x44199c]
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x42de07
fstp st(0)
fsubr qword [0x441c40]
fstp dword [esp + 0x24]
fld dword [0x441bf0]
jmp 0x42de38
fxch st(1)
fcom qword [0x441ac0]
fnstsw ax
test ah, 1
jne 0x42de24
fstp st(0)
fstp dword [esp + 0x24]
fld dword [0x441bf0]
jmp 0x42de38
fstp st(1)
fld qword [0x441b18]
fmul st(1)
fstp dword [esp + 0x24]
fmul qword [0x4419d0]
fstp dword [esp + 0x1c]
sub esp, 0xc
fld dword [0x17ae5e0]
fld dword [esp + 0x30]
fld qword [0x441c38]
fmul st(1)
fsubp st(2)
fxch st(1)
fstp dword [0x17ae5e0]
fld dword [esp + 0x28]
fld qword [0x441c30]
fmul st(1)
fadd dword [0x17ae5e4]
fstp dword [0x17ae5e4]
fxch st(1)
fmul qword [0x4419b8]
fadd dword [0x17ae5e8]
fstp dword [0x17ae5e8]
fld st(0)
fchs
fstp dword [esp + 8]
fdiv qword [0x441c28]
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
fstp dword [esp + 4]
mov ecx, 0x17ae604
mov edx, 0x17ae5f8
mov esi, 0x17ae5ec
fstp dword [esp]
call fcn.00421b20
mov ecx, dword [esp + 0x2c]
add esp, 0xc
jmp 0x42df3e
fld dword [esi + 0x471ea0]
fsubrp st(2)
fxch st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x42df3a
fld dword [0x17ae5e0]
sub esp, 0xc
fld st(1)
fmul qword [0x441c38]
fsubp st(1)
fstp dword [0x17ae5e0]
fld qword [0x441940]
fmul st(1)
fadd dword [0x17ae5e8]
fstp dword [0x17ae5e8]
fld qword [0x4419b8]
fmul st(1)
fadd dword [0x17ae5e4]
fstp dword [0x17ae5e4]
fxch st(1)
fst dword [esp + 8]
fxch st(1)
fchs
fmul qword [0x441bb0]
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
jmp 0x42de9d
fstp st(0)
fstp st(0)
mov eax, dword [0x17d61b8]
mov dword [0x17ae630], eax
mov eax, dword [0x17b6478]
imul eax, eax, 0x398
mov edx, ecx
shl edx, 8
or edx, ecx
shl edx, 8
or edx, ecx
add eax, 0x471e3c
push eax
push 0
mov eax, 0x17ae5e0
mov dword [0x68c108], edx
call fcn.0041f8f0
add esp, 8
jmp 0x42e203
fld dword [esi + 0x471ea0]
fsubrp st(2)
fxch st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x42dfb8
fld dword [0x17ae5e0]
fadd st(1)
fstp dword [0x17ae5e0]
fadd dword [0x17ae5e4]
fstp dword [0x17ae5e4]
jmp 0x42dfba
fstp st(0)
fild dword [esp + 0x20]
mov ecx, dword [0x17d61bc]
fnstcw word [esp + 0x14]
movzx edx, bl
fdiv qword [0x441c20]
movzx eax, word [esp + 0x14]
mov dword [esp + 0x38], edx
or eax, 0xc00
mov dword [0x17ae630], ecx
movzx ecx, bh
fstp dword [esp + 0x1c]
fild dword [esp + 0x38]
fld dword [esp + 0x1c]
mov dword [esp + 0x38], eax
fld st(0)
fmulp st(2)
fldcw word [esp + 0x38]
fxch st(1)
fistp dword [esp + 0x38]
mov al, byte [esp + 0x38]
mov byte [0x68c108], al
mov dword [esp + 0x38], ecx
fldcw word [esp + 0x14]
fild dword [esp + 0x38]
fnstcw word [esp + 0x14]
fmul st(1)
movzx eax, word [esp + 0x14]
or eax, 0xc00
mov dword [esp + 0x38], eax
movzx eax, byte [0x17b63d2]
fldcw word [esp + 0x38]
fistp dword [esp + 0x38]
mov dl, byte [esp + 0x38]
mov dword [esp + 0x38], eax
mov byte [0x68c109], dl
fldcw word [esp + 0x14]
lea edx, [esi + 0x471e3c]
push edx
push 0
fild dword [esp + 0x40]
fnstcw word [esp + 0x1c]
fmulp st(1)
movzx eax, word [esp + 0x1c]
or eax, 0xc00
mov dword [esp + 0x40], eax
mov eax, 0x17ae5e0
fldcw word [esp + 0x40]
fistp dword [esp + 0x40]
mov cl, byte [esp + 0x40]
mov byte [0x68c10a], cl
fldcw word [esp + 0x1c]
call fcn.0041f8f0
add esp, 8
jmp 0x42e203
cmp dword [0x17d5fa0], 0
jne case.default.0x42dd8a
fld dword [esi + 0x471ea0]
fsubrp st(2)
fxch st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x42e13a
fld qword [0x441c30]
sub esp, 0xc
fmul st(1)
mov ecx, 0x17ae604
mov edx, 0x17ae5f8
mov esi, 0x17ae5ec
fstp dword [esp + 0x30]
fld dword [0x17ae5e0]
fld dword [esp + 0x30]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [0x17ae5e0]
fld dword [0x17ae5e4]
fadd st(1)
fstp dword [0x17ae5e4]
fsubr dword [0x17ae5e8]
fstp dword [0x17ae5e8]
fxch st(1)
fst dword [esp + 8]
fxch st(1)
fmul qword [0x4419b8]
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.00421b20
mov ecx, dword [esp + 0x2c]
add esp, 0xc
jmp 0x42e13e
fstp st(0)
fstp st(0)
mov eax, dword [0x17b6478]
imul eax, eax, 0x398
mov edx, dword [eax + 0x471e48]
lea edx, [edx + edx*8]
mov edx, dword [edx*8 + 0x4465e8]
mov edx, dword [edx*4 + 0x17d61a0]
mov dword [0x17ae630], edx
mov edx, ecx
shl edx, 8
or edx, ecx
shl edx, 8
or edx, ecx
lea eax, [eax + 0x471e3c]
jmp 0x42df64
fld dword [esi + 0x471ea4]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x42e1c8
fld dword [esi + 0x471ea4]
fsubr qword [0x441b18]
faddp st(1)
fmul qword [0x4419a8]
fstp dword [esp + 0x1c]
fld dword [0x17ae5e0]
fld dword [esp + 0x1c]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [0x17ae5e0]
fsubr dword [0x17ae5e4]
fstp dword [0x17ae5e4]
jmp 0x42e1ca
fstp st(0)
mov edx, dword [0x17d61cc]
mov eax, ecx
shl eax, 8
or eax, ecx
shl eax, 8
or eax, ecx
lea ecx, [esi + 0x471e3c]
push ecx
mov dword [0x68c108], eax
push 0
mov eax, 0x17ae5e0
mov dword [0x17ae630], edx
call fcn.0041f8f0
add esp, 8
jmp 0x42e203
fstp st(0)
fstp st(0)
cmp dword [0x17d6180], 1
mov dword [0x68c108], 0x7f7f7f
jne 0x42e2e3
mov eax, dword [0x47b70c]
mov esi, dword [0x47aee4]
push 0xffffffffffffffff
push 0x10000
push 0x10000
add eax, 0xffffffc0
shl eax, 0x10
push eax
push 0
push 0
push 0x40
add esi, 0xffffffc0
shl esi, 0x10
mov dword [esp + 0x34], eax
push 0x100
push 0x17d0f80
mov eax, esi
mov ecx, 0x40
call fcn.00421660
mov eax, dword [0x17b63e0]
add esp, 0x24
test eax, eax
js 0x42e2d5
mov edx, dword [0x17d6140]
push 0xffffffffffffffff
and edx, 0x1ff
push 0x10000
push 0x10000
cmp edx, 0xff
jl 0x42e2a6
mov ecx, eax
and ecx, 0xfffffff8
shl ecx, 0x10
add ecx, dword [esp + 0x24]
push ecx
push 0
push 0
push 8
push 0x20
push 0x17b6480
jmp 0x42e2c0
mov edx, eax
and edx, 0xfffffff8
shl edx, 0x10
add edx, dword [esp + 0x24]
push edx
push 0
push 0
push 8
push 0x20
push 0x17d5fc0
and eax, 7
shl eax, 0x13
add eax, esi
mov ecx, 8
call fcn.00421660
add esp, 0x24
mov eax, dword [0x47aee4]
add eax, 0xffffffc0
mov dword [esp + 0x20], eax
jmp 0x42e2f0
mov ecx, dword [0x47aee4]
add ecx, 0xfffffffc
mov dword [esp + 0x20], ecx
mov eax, dword [0x17d6180]
cmp eax, 3
ja case.default.0x42e2fa
jmp dword [eax*4 + 0x42f88c]
mov eax, dword [0x17b6478]
imul eax, eax, 0x398
mov edx, dword [eax + 0x471e94]
mov eax, dword [eax + 0x471e90]
push edx
push eax
push str._d__d
push 0x16a6320
call fcn.00409124
add esp, 0x10
jmp case.default.0x42e2fa
mov ecx, dword [0x17b6478]
imul ecx, ecx, 0x398
mov edx, dword [ecx + 0x471e8c]
push edx
jmp 0x42e355
mov eax, dword [0x17b6478]
imul eax, eax, 0x398
mov ecx, dword [eax + 0x471e98]
push ecx
push 0x44144c
push 0x16a6320
call fcn.00409124
add esp, 0xc
mov eax, 0x16a6320
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e370
sub eax, edx
lea esi, [eax - 1]
test esi, esi
js 0x42e3e7
mov al, byte [esi + 0x16a6320]
cmp al, 0x30
jb 0x42e396
cmp al, 0x39
ja 0x42e396
movzx ecx, al
sub ecx, 0x30
jmp 0x42e39b
mov ecx, 0xa
mov edx, dword [0x47b70c]
mov eax, dword [esp + 0x20]
push 0xffffffffffffffff
push 0x10000
push 0x10000
shl edx, 0x10
push edx
push 0x200000
push 0x180000
mov dword [esp + 0x40], ecx
mov ecx, dword [ecx*4 + 0x17c0dc0]
push 0x18
push 0x60
push ecx
shl eax, 0x10
mov ecx, 0x20
call fcn.00421660
sub dword [esp + 0x44], 0x18
add esp, 0x24
dec esi
jns 0x42e380
mov eax, dword [0x17b6478]
imul eax, eax, 0x398
mov edx, dword [eax + 0x471e9c]
push edx
push 0x44144c
push 0x16a6320
call fcn.00409124
mov eax, 0x16a6320
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e413
sub eax, edx
mov ecx, eax
imul eax, eax, 0xffffffe8
xor esi, esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x20], eax
test ecx, ecx
jle 0x42e4c7
mov cl, byte [esi + 0x16a6320]
cmp cl, 0x30
jb 0x42e44b
cmp cl, 0x39
ja 0x42e44b
movzx ecx, cl
sub ecx, 0x30
jmp 0x42e450
mov ecx, 0xa
mov edx, dword [0x17b6478]
imul edx, edx, 0x398
add eax, dword [0x47aee4]
mov edi, 0x64
sub edi, dword [edx + 0x471e9c]
mov edx, dword [0x47b70c]
imul edi, edi, 0x10202
not edi
push edi
push 0x10000
push 0x10000
shl edx, 0x10
push edx
push 0x200000
push 0
mov dword [esp + 0x40], ecx
mov ecx, dword [ecx*4 + 0x17c0dc0]
push 0x18
push 0x60
push ecx
shl eax, 0xf
mov ecx, 0x20
call fcn.00421660
mov eax, dword [esp + 0x44]
inc esi
add eax, 0x30
add esp, 0x24
mov dword [esp + 0x20], eax
cmp esi, dword [esp + 0x18]
jl 0x42e433
mov ebx, dword [0x17b6478]
xor edx, edx
mov eax, 0x471e74
cmp dword [eax + 8], 0
je 0x42e4fb
mov ecx, dword [eax]
cmp ecx, 0xffffffff
je 0x42e4fb
cmp edx, ebx
je 0x42e4fb
cmp dword [eax + 0x58], 0
je 0x42e4fb
mov esi, ebx
imul esi, esi, 0x398
cmp ecx, dword [esi + 0x471e74]
je 0x42e50a
add eax, 0x398
inc edx
cmp eax, 0x479174
jne 0x42e4d4
jmp 0x42e568
mov eax, edx
imul eax, eax, 0x398
cmp dword [eax + 0x471e74], 0
lea edx, [eax + 0x471ee8]
mov eax, edx
lea esi, [eax + 1]
jne 0x42e534
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e526
mov edi, 0xff
jmp 0x42e540
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e534
mov edi, 0xff00
mov ecx, dword [0x47b70c]
push edx
mov edx, ecx
sar edx, 2
sub ecx, edx
sub eax, esi
push ecx
mov ecx, dword [0x47aee4]
lea eax, [eax + eax*2]
add eax, eax
sub ecx, eax
shr ecx, 1
call fcn.0041f420
add esp, 8
mov eax, ebx
imul eax, eax, 0x398
lea ecx, [esp + 0x24]
push ecx
fld dword [eax + 0x471e40]
lea edx, [esp + 0x20]
push edx
sub esp, 8
fstp dword [esp + 4]
fld dword [eax + 0x471e3c]
fstp dword [esp]
call fcn.0041a160
add esp, 0x10
cmp dword [0x17d4f80], 0
je 0x42e969
mov eax, dword [0x47b70c]
mov edi, dword [0x47aee4]
push 0
push 0x10000
push 0x10000
shl eax, 0xf
push eax
push 0x1000000
push 0x1000000
push 0x200
shl edi, 0xf
mov dword [esp + 0x34], eax
push 0x800
push 0x16ae5e0
mov eax, edi
mov ecx, 0x200
call fcn.00421660
add esp, 0x24
xor ecx, ecx
mov dword [esp + 0x30], ecx
mov ebp, 0xfffffffc
lea ebx, [ebx]
mov esi, ecx
imul esi, esi, 0x54
cmp dword [esi + 0x17be40c], ebp
je 0x42e6f7
mov eax, dword [0x17b6478]
imul eax, eax, 0x398
xor edx, edx
cmp dword [eax + 0x471e74], edx
sete dl
add edx, 2
cmp ecx, edx
je 0x42e6f7
fld dword [esi + 0x17be3c8]
fsub dword [eax + 0x471e14]
fld qword [0x441948]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x42e690
push 0xffffffffffffffff
fstp st(0)
fld dword [esi + 0x17be3c4]
push 0x10000
push 0x10000
call fcn.00439910
fld dword [esi + 0x17be3c0]
sub eax, 0xfc
shl eax, 0x10
add eax, dword [esp + 0x24]
push eax
call fcn.00439910
push 0
push 0x38000
push 7
push 0x1c
push 0x17b6360
jmp 0x42e6dc
fcomp qword [0x441c18]
fnstsw ax
test ah, 5
jp 0x42e6f7
fld dword [esi + 0x17be3c4]
push 0xffffffffffffffff
push 0x10000
push 0x10000
call fcn.00439910
fld dword [esi + 0x17be3c0]
sub eax, 0x107
shl eax, 0x10
add eax, dword [esp + 0x24]
push eax
call fcn.00439910
push 0
push 0x38000
push 7
push 0x1c
push 0x17b6400
sub eax, 0x100
shl eax, 0x10
add eax, edi
mov ecx, 4
call fcn.00421660
mov ecx, dword [esp + 0x54]
add esp, 0x24
inc ecx
mov dword [esp + 0x30], ecx
cmp ecx, 4
jl 0x42e600
push 0
call fcn.00409520
add esp, 4
xor ecx, ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], ecx
mov esi, ecx
imul esi, esi, 0x398
cmp dword [esi + 0x471e7c], 0
je 0x42e822
mov eax, dword [esi + 0x471e74]
cmp eax, 0xffffffff
je 0x42e822
mov edx, dword [0x17b6478]
cmp ecx, edx
je 0x42e822
cmp dword [esi + 0x471e78], 0
je 0x42e822
imul edx, edx, 0x398
cmp eax, dword [edx + 0x471e74]
jne 0x42e7ac
fld dword [esi + 0x471e10]
push 0xffffffffffffffff
push 0x10000
push 0x10000
call fcn.00439910
fld dword [esi + 0x471e0c]
sub eax, 0x100
shl eax, 0x10
add eax, dword [esp + 0x24]
push eax
call fcn.00439910
mov ecx, dword [0x17d619c]
push 0x38000
push 0x38000
push 7
push 0x1c
push ecx
jmp 0x42e807
mov eax, dword [esp + 0x28]
cdq
cmp edx, dword [0x17b6474]
jg 0x42e822
jl 0x42e7c3
cmp eax, dword [0x17b6470]
jae 0x42e822
fld dword [esi + 0x471e10]
push 0xffffffffffffffff
push 0x10000
push 0x10000
call fcn.00439910
fld dword [esi + 0x471e0c]
sub eax, 0x100
shl eax, 0x10
add eax, dword [esp + 0x24]
push eax
call fcn.00439910
mov edx, dword [0x17be2ac]
push 0x38000
push 0x38000
push 7
push 0x1c
push edx
sub eax, 0x100
shl eax, 0x10
add eax, edi
mov ecx, 7
call fcn.00421660
mov ecx, dword [esp + 0x44]
add esp, 0x24
inc ecx
mov dword [esp + 0x20], ecx
cmp ecx, 0x20
jne 0x42e719
mov ebp, dword [0x47b70c]
mov ebx, dword [0x47aee4]
sar ebp, 1
lea eax, [ebp - 0xe3]
mov dword [esp + 0x18], eax
xor eax, eax
sar ebx, 1
xor ecx, ecx
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x18]
add edx, 0xffffffdc
add al, 0x41
push 0x17c0e00
push edx
lea ecx, [ecx + ebx - 0xe3]
or edi, 0xffffffff
mov byte [0x17c0e01], 0
mov byte [0x17c0e00], al
call fcn.0041f420
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x20]
add byte [0x17c0e00], 0xf0
push 0x17c0e00
push ecx
or edi, edi
lea ecx, [ebx - 0x107]
call fcn.0041f420
mov eax, dword [esp + 0x30]
inc eax
mov ecx, eax
shl ecx, 6
add esp, 0x10
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], ecx
cmp eax, 8
jl 0x42e856
mov esi, dword [0x17b6478]
imul esi, esi, 0x398
fld dword [esi + 0x471e0c]
call fcn.00439910
fld dword [esi + 0x471e10]
lea ebx, [eax + ebx - 0x100]
mov dword [esp + 0x2c], ebx
call fcn.00439910
fld dword [esp + 0x24]
fld qword [0x441bb0]
lea esi, [eax + ebp - 0x100]
fmul st(1), st(0)
mov dword [esp + 0x18], esi
fild dword [esp + 0x18]
push 0xffff
faddp st(2)
fxch st(1)
call fcn.00439910
fmul dword [esp + 0x20]
push eax
fiadd dword [esp + 0x34]
call fcn.00439910
push eax
push ebx
mov eax, esi
call fcn.0041e0c0
mov eax, dword [esp + 0x28]
mov ecx, dword [0x16a68c0]
push 0xffffffffffffffff
push 0x10000
push 0x10000
shl eax, 0x10
push eax
push 0x38000
push 0x38000
push 7
push 0x1c
mov eax, ebx
push ecx
shl eax, 0x10
mov ecx, 7
call fcn.00421660
add esp, 0x34
jmp 0x42ec11
mov edi, dword [0x17b6478]
imul edi, edi, 0x398
fld dword [edi + 0x471e10]
call fcn.00439910
fld dword [edi + 0x471e0c]
lea esi, [eax - 0x40]
and esi, 0x1ff
shl esi, 9
call fcn.00439910
sub eax, 0x40
and eax, 0x1ff
mov edx, 0x80
add esi, eax
xor eax, eax
mov dword [esp + 0x18], edx
lea esp, [esp]
mov ecx, 0x80
jmp 0x42e9c0
mov edi, dword [esi*4 + 0x16ae5e0]
mov dword [eax*4 + 0x17c0f60], edi
lea edi, [esi + 1]
mov ebx, esi
and edi, 0x1ff
and ebx, 0x1ff
sub edi, ebx
inc eax
add esi, edi
dec ecx
jne 0x42e9c0
add esi, 0x200
lea ecx, [esi - 0x80]
mov edi, esi
and ecx, 0x1ff
and edi, 0x1ff
sub ecx, edi
add esi, ecx
and esi, 0x3ffff
dec edx
jne 0x42e9b0
push edx
push 0x10000
push 0x10000
push edx
push edx
push 0x800000
mov dword [esp + 0x38], eax
mov eax, dword [0x47aee4]
push 0x80
push 0x200
shl eax, 0x10
push 0x17c0f60
mov ecx, 0x80
mov dword [esp + 0x4c], esi
call fcn.00421660
fld dword [esp + 0x48]
fld qword [0x441c10]
mov esi, dword [0x47aee4]
fmul st(1), st(0)
add esp, 0x24
push 0xffff
fxch st(1)
add esi, 0xffffffc0
call fcn.00439910
fmul dword [esp + 0x20]
mov edx, 0x40
sub edx, eax
push edx
call fcn.00439910
mov ecx, esi
sub ecx, eax
push ecx
push esi
mov eax, 0x40
call fcn.0041e0c0
mov edx, dword [0x16a68c0]
push 0xffffffffffffffff
push 0x10000
push 0x10000
push 0x400000
push 0x38000
push 0x38000
push 7
mov eax, esi
push 0x1c
shl eax, 0x10
push edx
mov ecx, 7
call fcn.00421660
fld dword [0x441c0c]
fld dword [0x441c08]
mov edi, dword [0x17b6478]
add esp, 0x34
xor esi, esi
mov dword [esp + 0x20], esi
mov ecx, esi
imul ecx, ecx, 0x398
cmp dword [ecx + 0x471e7c], 0
je 0x42ebff
mov eax, dword [ecx + 0x471e74]
cmp eax, 0xffffffff
je 0x42ebff
cmp esi, edi
je 0x42ebff
cmp dword [ecx + 0x471ed0], 0
je 0x42ebff
cmp dword [ecx + 0x471e78], 0
je 0x42ebff
mov edx, edi
imul edx, edx, 0x398
cmp eax, dword [edx + 0x471e74]
jne 0x42ebff
fld dword [ecx + 0x471e0c]
fsub dword [edx + 0x471e0c]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fcom st(2)
fnstsw ax
test ah, 0x41
je 0x42ec4e
fld dword [ecx + 0x471e10]
fsub dword [edx + 0x471e10]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fcom st(3)
fnstsw ax
test ah, 0x41
je 0x42ec4c
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jnp 0x42ec52
fxch st(1)
fcom st(2)
fnstsw ax
test ah, 5
jnp 0x42ec4c
fstp st(3)
push 0xffffffffffffffff
fstp st(1)
push 0x10000
push 0x10000
fxch st(1)
call fcn.00439910
add eax, 0x40
shl eax, 0x10
push eax
call fcn.00439910
mov ecx, dword [0x47aee4]
mov edx, dword [0x17d619c]
push 0x38000
push 0x38000
push 7
lea eax, [eax + ecx - 0x40]
push 0x1c
shl eax, 0x10
push edx
mov ecx, 7
call fcn.00421660
fld dword [0x441c08]
fld dword [0x441c0c]
mov esi, dword [esp + 0x44]
mov edi, dword [0x17b6478]
fxch st(1)
add esp, 0x24
inc esi
mov dword [esp + 0x20], esi
cmp esi, 0x20
jne 0x42eadb
fstp st(1)
fstp st(0)
mov ebp, dword [0x47b70c]
mov esi, dword [0x47aee4]
fld dword [0x67fac8]
fld dword [0x17c0f4c]
fcompp
fnstsw ax
test ah, 1
jne case.default.0x42ec45
mov eax, dword [0x17b6580]
dec eax
cmp eax, 3
ja case.default.0x42ec45
jmp dword [eax*4 + 0x42f89c]
fstp st(0)
fstp st(0)
jmp 0x42ebff
fstp st(1)
fstp st(0)
jmp 0x42ebff
push 0xffffffffffffffff
push 0x10000
push 0x10000
add ebp, 0xffffff38
shl ebp, 0xf
push ebp
push 0
push 0
push 0x28
push 0xa0
push 0x16a68e0
mov ecx, 0xc8
jmp 0x42ed10
push 0xffffffffffffffff
push 0x10000
push 0x10000
add ebp, 0xffffff38
shl ebp, 0xf
push ebp
push 0
push 0
push 0x28
push 0xa0
lea eax, [esi + 0x78]
push 0x17b65a0
mov ecx, 0xc8
jmp 0x42ed16
mov ecx, dword [0x17be2b0]
push 0xffffffffffffffff
push 0x10000
push 0x10000
add ebp, 0xffffff38
shl ebp, 0xf
push ebp
push 0
push 0
push 0xc8
push 0x320
push ecx
jmp 0x42ed0b
push 0xffffffffffffffff
push 0x10000
push 0x10000
add ebp, 0x78
shl ebp, 0xf
push ebp
push 0
push 0
push 0xc8
push 0x320
push 0x17ae640
mov ecx, 0x28
lea eax, [esi - 0xc8]
shl eax, 0xf
call fcn.00421660
mov ebp, dword [0x47b70c]
mov esi, dword [0x47aee4]
add esp, 0x24
cmp dword [0x17be2a4], 0
jne 0x42ed43
cmp dword [0x16a68d0], 0
je 0x42ef83
fld dword [0x441ca4]
sub esp, 0xc
fstp dword [0x17ae5ec]
mov ecx, 0x17ae604
fldz
mov edx, 0x17ae5f8
fst dword [0x17ae5f0]
mov esi, 0x17ae5ec
fst dword [0x17ae5f4]
fst dword [0x17ae5f8]
fst dword [0x17ae5fc]
fld dword [0x441ca0]
fst dword [0x17ae600]
fstp dword [0x17ae608]
fst dword [0x17ae604]
fst dword [0x17ae60c]
fst dword [esp + 8]
fstp dword [esp + 4]
fld dword [0x67fac8]
fstp dword [esp]
call fcn.00421b20
add esp, 0xc
cmp dword [0x17be2a4], 0
push 0
push 0
je 0x42eeab
fld dword [0x441c04]
mov edx, dword [0x17d6218]
fstp dword [0x17ae5e0]
mov eax, 0x17ae5e0
fld dword [0x441c4c]
mov dword [0x17ae630], edx
fstp dword [0x17ae5e4]
fld dword [0x441c00]
fstp dword [0x17ae5e8]
call fcn.0041f8f0
mov eax, dword [0x17d621c]
fld dword [0x441bfc]
mov dword [0x17ae630], eax
fstp dword [0x17ae5e0]
push 0
push 0
mov eax, 0x17ae5e0
call fcn.0041f8f0
push 0x17d6160
push str.Press_1_to_join_the__s_Team
push 0x16a6320
call fcn.00409124
mov eax, dword [0x47b70c]
mov ecx, eax
sar ecx, 2
sub eax, ecx
mov ecx, dword [0x47aee4]
add esp, 0x1c
sar ecx, 2
push 0x16a6320
push eax
sub ecx, 0x64
mov edi, 0xff0000
call fcn.0041f420
push 0x17d6170
push str.Press_2_to_join_the__s_Team
push 0x16a6320
call fcn.00409124
mov ebp, dword [0x47b70c]
mov esi, dword [0x47aee4]
mov edx, ebp
sar edx, 2
mov eax, ebp
sub eax, edx
mov edx, esi
add esp, 0x14
sar edx, 2
mov ecx, esi
sub ecx, edx
push 0x16a6320
push eax
sub ecx, 0x64
call fcn.0041f420
add esp, 8
jmp 0x42ef83
fld dword [0x441bf8]
mov eax, dword [0x17d61c0]
fstp dword [0x17ae5e0]
mov dword [0x17ae630], eax
fld dword [0x441cf4]
mov eax, 0x17ae5e0
fstp dword [0x17ae5e4]
fld dword [0x441ca8]
fstp dword [0x17ae5e8]
call fcn.0041f8f0
fldz
mov ecx, dword [0x17d61c4]
push 0
fstp dword [0x17ae5e0]
push 0
mov eax, 0x17ae5e0
mov dword [0x17ae630], ecx
call fcn.0041f8f0
fld dword [0x441bf4]
mov edx, dword [0x17d61c8]
fstp dword [0x17ae5e0]
push 0
push 0
mov eax, 0x17ae5e0
mov dword [0x17ae630], edx
call fcn.0041f8f0
mov ebx, dword [0x47b70c]
mov esi, dword [0x47aee4]
mov eax, ebx
sar eax, 2
mov ebp, esi
sub ebx, eax
sar ebp, 2
push str.Press_1_to_select_the_Rifle
push ebx
lea ecx, [ebp - 0x51]
mov edi, 0xff0000
call fcn.0041f420
mov ecx, esi
sar ecx, 1
push str.Press_2_to_select_the_SMG
push ebx
sub ecx, 0x4b
call fcn.0041f420
mov ecx, esi
sub ecx, ebp
push str.Press_3_to_select_the_Shotgun
push ebx
sub ecx, 0x57
call fcn.0041f420
mov ebp, dword [0x47b70c]
add esp, 0x30
cmp dword [0x17d5fa4], 0
je 0x42f046
sar esi, 1
add ebp, 0xffffffb0
sub esi, 0x81
push str.Default_Controls...
push ebp
mov edi, 0xffffff
mov ecx, esi
mov dword [esp + 0x20], ebp
call fcn.0041f420
mov eax, dword [esp + 0x20]
add eax, 0xa
push str.Change_Team:_COMMA__Change_Weapon:_PERIOD
push eax
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.0041f420
mov eax, dword [esp + 0x28]
add eax, 0xa
push str.Movement:_W_S_A_D__Jump:_SPACE__Crouch:_CTRL
push eax
mov ecx, esi
mov dword [esp + 0x30], eax
call fcn.0041f420
mov eax, dword [esp + 0x30]
add eax, 0xa
push str.Walk:_SHIFT__Fire:_L.MOUSE__Secondary_Fire_Sights:_R.MOUSE
push eax
mov ecx, esi
mov dword [esp + 0x38], eax
call fcn.0041f420
mov eax, dword [esp + 0x38]
add eax, 0xa
push str.Reload:_R__Scores:_TAB__Allchat:_T__Teamchat:_Y
push eax
mov ecx, esi
mov dword [esp + 0x40], eax
call fcn.0041f420
mov eax, dword [esp + 0x40]
add eax, 0xa
push str.Color_Select:_ARROWS__Color_Sample:_R.MOUSE
push eax
mov ecx, esi
mov dword [esp + 0x48], eax
call fcn.0041f420
mov eax, dword [esp + 0x48]
add eax, 0xa
push str.Weapons:_1_4_or_MOUSEWHEEL__Map:_M__Quit:_ESC
push eax
mov ecx, esi
mov dword [esp + 0x50], eax
call fcn.0041f420
add esp, 0x38
jmp 0x42f060
cmp byte [0x47b10f], 0
je 0x42f45f
cmp dword [0x4793e0], 0
jne 0x42f45f
mov ecx, dword [0x17d6228]
mov edx, dword [0x17d6238]
push ecx
push edx
push str._d__d
push 0x17c0e00
call fcn.00409124
mov eax, 0x17c0e00
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42f088
sub eax, edx
mov ecx, eax
lea eax, [ecx + ecx*2]
add eax, eax
add eax, eax
xor esi, esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x20], eax
test ecx, ecx
jle 0x42f126
xor edi, edi
jmp 0x42f0b4
mov eax, dword [esp + 0x20]
mov cl, byte [esi + 0x17c0e00]
cmp cl, 0x30
jb 0x42f0cc
cmp cl, 0x39
ja 0x42f0cc
movzx ecx, cl
sub ecx, 0x30
jmp 0x42f0d1
mov ecx, 0xa
mov edx, dword [0x17d616c]
push edx
mov edx, dword [0x47b70c]
push 0x10000
push 0x10000
shl edx, 0xd
push edx
push 0
push 0
mov edx, edi
sub edx, eax
mov eax, dword [0x47aee4]
mov dword [esp + 0x40], ecx
mov ecx, dword [ecx*4 + 0x17c0dc0]
push 0x18
lea eax, [eax + edx*4]
push 0x60
push ecx
shl eax, 0xe
mov ecx, 0x20
call fcn.00421660
inc esi
add esp, 0x24
add edi, 0x18
cmp esi, dword [esp + 0x18]
jl 0x42f0b0
mov edx, dword [0x17d6228]
mov eax, dword [0x17d623c]
push edx
push eax
push str._d__d
push 0x17c0e00
call fcn.00409124
mov eax, 0x17c0e00
add esp, 0x10
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42f150
sub eax, edx
lea edx, [eax + eax*2]
add edx, edx
add edx, edx
xor esi, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], edx
test eax, eax
jle 0x42f1f8
xor edi, edi
jmp 0x42f184
mov edx, dword [esp + 0x20]
mov al, byte [esi + 0x17c0e00]
cmp al, 0x30
jb 0x42f19a
cmp al, 0x39
ja 0x42f19a
movzx ecx, al
sub ecx, 0x30
jmp 0x42f19f
mov ecx, 0xa
mov eax, dword [0x17d617c]
push eax
mov eax, dword [0x47b70c]
push 0x10000
push 0x10000
shl eax, 0xd
push eax
mov eax, edi
sub eax, edx
mov edx, dword [0x47aee4]
imul edx, edx, 0xc000
push 0
push 0
mov dword [esp + 0x40], ecx
mov ecx, dword [ecx*4 + 0x17c0dc0]
push 0x18
shl eax, 0x10
push 0x60
push ecx
add eax, edx
mov ecx, 0x20
call fcn.00421660
inc esi
add esp, 0x24
add edi, 0x18
cmp esi, dword [esp + 0x18]
jl 0x42f180
xor eax, eax
lea ebx, [ebx]
mov dword [eax*4 + 0x17d60c0], eax
inc eax
cmp eax, 0x20
jl 0x42f200
mov eax, 1
mov dword [esp + 0x2c], eax
xor esi, esi
jmp 0x42f220
mov ebx, dword [esi + 0x17d60c4]
mov edx, dword [esi + 0x17d60c0]
mov ecx, ebx
imul ecx, ecx, 0x398
mov edi, dword [ecx + 0x471e88]
mov ecx, edx
imul ecx, ecx, 0x398
dec eax
cmp edi, dword [ecx + 0x471e88]
jle 0x42f275
mov ecx, esi
test eax, eax
js 0x42f275
dec eax
mov dword [ecx + 0x17d60c4], edx
lea ecx, [eax*4]
mov edx, dword [ecx + 0x17d60c0]
mov ebp, edx
imul ebp, ebp, 0x398
cmp edi, dword [ebp + 0x471e88]
jg 0x42f24d
mov dword [eax*4 + 0x17d60c4], ebx
mov eax, dword [esp + 0x2c]
inc eax
add esi, 4
mov dword [esp + 0x2c], eax
cmp esi, 0x7c
jl 0x42f220
mov eax, dword [0x47b70c]
sar eax, 2
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], eax
mov esi, 0x17d60c0
mov ebx, 0xa
jmp 0x42f2b0
mov ecx, dword [esi]
mov eax, ecx
imul eax, eax, 0x398
cmp dword [eax + 0x471e7c], 0
je 0x42f40b
mov eax, dword [eax + 0x471e74]
cmp eax, 0xffffffff
je 0x42f40b
push ebx
push 0x17c0e00
push ecx
test eax, eax
jne 0x42f379
mov edx, dword [0x47aee4]
sar edx, 2
mov dword [esp + 0x34], edx
call fcn.00417d29
mov ecx, dword [esp + 0x34]
mov edi, dword [0x17d616c]
add esp, 0xc
push eax
mov eax, dword [esp + 0x1c]
push eax
add ecx, 0xffffffc7
call fcn.0041f420
mov ecx, dword [esi]
mov edx, dword [esp + 0x20]
imul ecx, ecx, 0x398
mov edi, dword [0x17d616c]
add ecx, 0x471ee8
push ecx
mov ecx, dword [esp + 0x34]
push edx
add ecx, 0xffffffd9
call fcn.0041f420
mov eax, dword [esi]
imul eax, eax, 0x398
mov ecx, dword [eax + 0x471e88]
push ebx
push 0x17c0e00
push ecx
call fcn.00417d29
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x44]
mov edi, dword [0x17d616c]
add esp, 0x1c
push eax
push edx
add ecx, 0x39
call fcn.0041f420
add esp, 8
add dword [esp + 0x18], ebx
jmp 0x42f40b
mov eax, dword [0x47aee4]
mov edx, eax
sar edx, 2
sub eax, edx
mov dword [esp + 0x34], eax
call fcn.00417d29
mov ecx, dword [esp + 0x34]
mov edi, dword [0x17d617c]
add esp, 0xc
push eax
mov eax, dword [esp + 0x24]
push eax
add ecx, 0xffffffc7
call fcn.0041f420
mov ecx, dword [esi]
mov edx, dword [esp + 0x28]
imul ecx, ecx, 0x398
mov edi, dword [0x17d617c]
add ecx, 0x471ee8
push ecx
mov ecx, dword [esp + 0x34]
push edx
add ecx, 0xffffffd9
call fcn.0041f420
mov eax, dword [esi]
imul eax, eax, 0x398
mov ecx, dword [eax + 0x471e88]
push ebx
push 0x17c0e00
push ecx
call fcn.00417d29
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x44]
mov edi, dword [0x17d617c]
add esp, 0x1c
push eax
push edx
add ecx, 0x39
call fcn.0041f420
add esp, 8
add dword [esp + 0x20], ebx
add esi, 4
cmp esi, 0x17d6140
jl 0x42f2b0
mov eax, dword [0x17ae638]
mov ecx, dword [eax + 0x98]
push ecx
push str.PING:__ums
push 0x17c0e00
call fcn.00409124
mov esi, dword [0x47aee4]
add esp, 0xc
mov ecx, esi
sar ecx, 1
push 0x17c0e00
push 0x30
sub ecx, 0x1e
mov edi, 0xff0000
call fcn.0041f420
mov ebp, dword [0x47b70c]
add esp, 8
mov ecx, dword [0x4793e0]
lea eax, [ebp - 0x64]
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], eax
test ecx, ecx
je 0x42f4b7
add eax, 0xfffffff6
cmp ecx, 1
mov edi, 0xffffff
mov ecx, 0xc
jne 0x42f48d
push str.Global_Chat:
jmp 0x42f492
push str.Team_Chat:
push eax
call fcn.0041f420
mov edx, dword [esp + 0x20]
add esp, 8
push 0x16a6440
push edx
mov edi, 0xffffff
mov ecx, 0xc
call fcn.0041f420
add esp, 8
xor ebx, ebx
lea esp, [esp]
mov edx, dword [esp + 0x18]
add dword [esp + 0x20], 0xa
add edx, 0xa
cmp byte [ebx + 0x478e70], 0
lea ecx, [ebx + 0x478e70]
mov dword [esp + 0x18], edx
je case.default.0x42f4fe
fld dword [0x67fac8]
fld dword [ecx + 0x70]
fcompp
fnstsw ax
test ah, 5
jp 0x42f4f6
mov byte [ecx], 0
jmp case.default.0x42f4fe
mov eax, dword [ecx + 0x6c]
cmp eax, 3
ja case.default.0x42f4fe
jmp dword [eax*4 + 0x42f8ac]
mov edi, dword [0x17d616c]
jmp 0x42f521
mov edi, dword [0x17d617c]
jmp 0x42f521
mov edi, 0xffffff
jmp 0x42f521
mov edi, 0xff0000
push ecx
push edx
mov ecx, 0xc
call fcn.0041f420
add esp, 8
cmp byte [ebx + 0x479128], 0
lea ecx, [ebx + 0x479128]
je 0x42f5c6
fld dword [0x67fac8]
fld dword [ebx + 0x479198]
fcompp
fnstsw ax
test ah, 5
jp 0x42f55d
mov byte [ecx], 0
jmp 0x42f5c6
mov eax, dword [ebx + 0x479194]
sub eax, 4
je 0x42f599
dec eax
je 0x42f583
dec eax
jne 0x42f5c6
mov eax, ecx
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x42f573
sub eax, edi
mov edi, 0xff0000
jmp 0x42f5af
mov eax, ecx
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x42f588
sub eax, edi
mov edi, dword [0x17d617c]
jmp 0x42f5af
mov eax, ecx
lea edi, [eax + 1]
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x42f5a0
sub eax, edi
mov edi, dword [0x17d616c]
push ecx
mov ecx, dword [esp + 0x24]
lea edx, [eax + eax*2]
push ecx
add edx, edx
mov ecx, esi
sub ecx, edx
call fcn.0041f420
add esp, 8
add ebx, 0x74
cmp ebx, 0x2b8
jl 0x42f4c0
cmp dword [0x47972c], 0
je 0x42f60b
mov eax, dword [0x479718]
mov edx, dword [0x4716ec]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x80]
mov dword [0x47972c], 0
call eax
mov esi, dword [0x47aee4]
mov ebp, dword [0x47b70c]
fld dword [0x17b63dc]
fld dword [0x67fac8]
fcompp
fnstsw ax
test ah, 1
jne 0x42f70f
fld dword [0x17c0f40]
mov ebx, dword [0x479718]
fsub dword [0x4fb72c]
mov edi, esi
fstp dword [0x17c0f40]
fldz
fcomp dword [0x17c0f40]
fnstsw ax
test ah, 5
jp 0x42f70f
mov ecx, dword [0x47a98c]
mov edx, dword [0x47b700]
mov dword [edx + 4], ecx
mov esi, dword [0x47a98c]
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x2098], 0xff0000
mov edx, dword [esi + 0x2098]
mov dword [ecx + 0x2c], edx
mov eax, dword [esi + 4]
mov ecx, dword [eax]
lea edx, [esp + 0x34]
push edx
push eax
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
js 0x42f6d2
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 0xc8c]
mov ecx, dword [esi + 0xc88]
push 0xcc0020
push 0
push edx
mov edx, dword [esi + 0x10]
push edx
push eax
push ecx
push 0
push 0
push eax
mov eax, dword [esp + 0x58]
push ecx
push 0
push 0
push eax
call dword [sym.imp.GDI32.dll_StretchDIBits]
mov esi, dword [esi + 4]
mov edx, dword [esp + 0x34]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x68]
push edx
push esi
call eax
mov ecx, dword [0x47b700]
mov eax, ebp
cdq
sub eax, edx
sar eax, 1
add eax, 0xa
push str.RELOAD
push eax
mov eax, edi
cdq
sub eax, edx
sar eax, 1
sub eax, 0x32
push eax
push ebx
push ecx
call fcn.00437cd0
test eax, eax
je 0x42f703
call fcn.004372d0
mov ebp, dword [0x47b70c]
mov esi, dword [0x47aee4]
fld dword [0x17d6184]
mov ebx, dword [0x479718]
fsub dword [0x4fb72c]
fstp dword [0x17d6184]
fldz
fcomp dword [0x17d6184]
fnstsw ax
test ah, 5
jp 0x42f7eb
mov edx, dword [0x47a98c]
mov eax, dword [0x47b700]
mov dword [eax + 4], edx
mov edi, dword [0x47a98c]
mov ecx, dword [edi + 0xc]
mov dword [edi + 0x2098], 0xff0000
mov edx, dword [edi + 0x2098]
mov dword [ecx + 0x2c], edx
mov eax, dword [edi + 4]
mov ecx, dword [eax]
lea edx, [esp + 0x34]
push edx
push eax
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
js 0x42f7ba
mov edx, dword [edi + 0xc]
mov eax, dword [edi + 0xc8c]
mov ecx, dword [edi + 0xc88]
push 0xcc0020
push 0
push edx
mov edx, dword [edi + 0x10]
push edx
push eax
push ecx
push 0
push 0
push eax
mov eax, dword [esp + 0x58]
push ecx
push 0
push 0
push eax
call dword [sym.imp.GDI32.dll_StretchDIBits]
mov edi, dword [edi + 4]
mov edx, dword [esp + 0x34]
mov ecx, dword [edi]
mov eax, dword [ecx + 0x68]
push edx
push edi
call eax
mov ecx, dword [0x47b700]
mov eax, ebp
cdq
sub eax, edx
sar eax, 1
add eax, 0xa
push str.MAP_RESET
push eax
mov eax, esi
cdq
sub eax, edx
sar eax, 1
sub eax, 0x50
push eax
push ebx
push ecx
call fcn.00437cd0
test eax, eax
je 0x42f7eb
call fcn.004372d0
call fcn.004186a0
cmp dword [0x47aee8], 0
je 0x42f84f
mov eax, dword [0x47a9c0]
lea edx, [esp + 0x70]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [esp + 0x74]
mov eax, dword [esp + 0x7c]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
mov ecx, dword [esp + 0x70]
push eax
mov eax, dword [esp + 0x7c]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
push eax
call dword [sym.imp.USER32.dll_SetCursorPos]
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
push 0
call esi
cmp eax, 0xffffffff
jge 0x42f861
push 1
call esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov esi, dword [sym.imp.USER32.dll_ShowCursor]
push 1
call esi
test eax, eax
jle 0x42f861
push 0
call esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret