Function at 0x4f5810
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5f2da2
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x19c
push ebx
push esi
mov esi, ecx
lea eax, [esp + 0xb0]
push edi
push eax
mov ecx, dword [esi + 0x20]
push ecx
call dword [0x600b58]
lea ecx, [esp + 0x114]
call fcn.005e2e28
xor eax, eax
mov dword [esp + 0x68], 0x603f20
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x6c], eax
mov ecx, dword [esi + 0x424]
mov byte [esp + 0x1b0], 1
cmp ecx, eax
jne 0x4f58e9
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x114]
test ebx, ebx
je 0x4f588c
mov eax, dword [ebx + 4]
push eax
call dword [0x60007c]
push eax
lea ecx, [esp + 0x118]
call fcn.005e2e22
mov edx, dword [esp + 0xc0]
mov eax, dword [esp + 0xbc]
mov ecx, dword [ebx + 4]
push edx
push eax
push ecx
call dword [0x600080]
push eax
lea ecx, [esp + 0x6c]
call fcn.005e2d2c
mov edx, dword [esp + 0x6c]
lea eax, [esp + 0x68]
neg eax
sbb eax, eax
and eax, edx
mov edx, dword [esp + 0x118]
push eax
push edx
call fcn.005e2e1c
mov dword [esp + 0x110], eax
jmp 0x4f58ee
mov ebx, dword [ebp + 8]
mov edi, ebx
mov eax, dword [esi + 0x424]
test eax, eax
jne 0x4f5912
mov eax, dword [0x6314e0]
lea ecx, [esp + 0xb4]
push eax
push ecx
mov ecx, edi
call fcn.005e2e16
jmp 0x4f5ac9
mov edx, dword [ebx + 8]
push 0x5a
push edx
call dword [0x600084]
mov dword [esp + 0x54], eax
fild dword [esp + 0x54]
fmul qword [0x604330]
call fcn.005e35c0
mov dword [esp + 0xb8], eax
mov eax, dword [ebx + 8]
push 0x58
push eax
call dword [0x600084]
mov ecx, dword [ebx + 8]
push 8
push ecx
mov dword [esp + 0xbc], eax
call dword [0x600084]
mov edx, dword [ebx + 8]
push 0x58
push edx
mov dword [esp + 0x5c], eax
call dword [0x600084]
mov ecx, dword [esp + 0x54]
push 0xa
sub ecx, eax
mov eax, dword [ebx + 8]
push eax
mov dword [esp + 0xc4], ecx
call dword [0x600084]
mov ecx, dword [ebx + 8]
push 0x5a
push ecx
mov dword [esp + 0x5c], eax
call dword [0x600084]
fild dword [esp + 0x54]
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x604330]
fsubp st(1)
call fcn.005e35c0
mov ecx, dword [0x6314e4]
mov edx, dword [0x6314e8]
mov ebx, dword [0x640790]
mov dword [esp + 0xc0], eax
mov eax, dword [0x6314ec]
mov dword [esp + 0x108], ecx
mov dword [esp + 0x100], eax
mov eax, dword [0x6314e0]
cmp eax, 0xffffff
mov dword [esp + 0xfc], edx
mov dword [esp + 0x10c], ebx
mov dword [esp + 0x104], eax
je 0x4f5a40
mov eax, 0xffffff
cmp ecx, eax
jne 0x4f5a09
mov dword [0x6314e4], 0
xor ecx, ecx
cmp edx, eax
jne 0x4f5a15
mov dword [0x6314e8], ecx
cmp ebx, eax
jne 0x4f5a1f
mov dword [0x640790], ecx
cmp dword [0x6314f0], eax
jne 0x4f5a2d
mov dword [0x6314f0], ecx
cmp dword [0x6314ec], eax
jne 0x4f5a3b
mov dword [0x6314ec], ecx
mov dword [0x6314e0], eax
mov eax, dword [0x63afd0]
mov ecx, dword [esi + 0x338]
test eax, eax
mov dword [esp + 0xa8], ecx
jne 0x4f5abd
mov eax, dword [esp + 0xbc]
test eax, eax
jle 0x4f5a91
fild dword [esp + 0xbc]
push 0
fstp qword [esp + 0x30]
call dword [0x600bb0]
mov dword [esp + 0x54], eax
fild dword [esp + 0x54]
fdivr qword [esp + 0x2c]
fimul dword [esi + 0x338]
call fcn.005e35c0
mov dword [esi + 0x338], eax
mov ecx, dword [esi + 0x338]
mov eax, 1
cmp ecx, eax
jge 0x4f5aa6
mov dword [esi + 0x338], eax
mov ecx, dword [esi + 0x338]
mov eax, 0x32
cmp ecx, eax
jle 0x4f5ac9
mov dword [esi + 0x338], eax
jmp 0x4f5ac9
mov edx, dword [0x63afcc]
mov dword [esi + 0x338], edx
lea ecx, [esp + 0xc]
call fcn.005e2960
lea ecx, [esp + 0x34]
mov byte [esp + 0x1b0], 2
call fcn.005e2960
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1b0], 3
call fcn.005e2960
lea ecx, [esp + 0x64]
mov byte [esp + 0x1b0], 4
call fcn.005e2960
xor ecx, ecx
mov eax, 0x603ef8
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], eax
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xc4], eax
mov dword [esp + 0x84], ecx
mov dword [esp + 0x80], eax
mov ecx, dword [edi + 4]
lea eax, [esp + 0x2c]
push eax
push 1
push 0x62d420
push ecx
mov byte [esp + 0x1c0], 8
call dword [0x600030]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x244], edx
mov dword [esi + 0x248], eax
mov ecx, dword [edi + 8]
push 6
push ecx
call dword [0x600034]
push eax
call fcn.005e2e0a
lea edx, [esp + 0x124]
mov dword [esp + 0x54], eax
mov eax, dword [eax + 4]
push edx
push 0x5c
push eax
call dword [0x60008c]
xor ecx, ecx
mov cx, word [0x631558]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fild dword [esi + 0x244]
fmul st(1)
fmul qword [0x601400]
call fcn.005e35c0
fild dword [esi + 0x248]
mov dword [esp + 0x124], eax
fmul st(1)
fmul qword [0x601400]
call fcn.005e35c0
mov ebx, dword [0x600a6c]
lea edx, [esp + 0x140]
push 0x6359d4
push edx
fstp st(0)
mov dword [esp + 0x130], eax
call ebx
add esp, 8
lea eax, [esp + 0x124]
push eax
call dword [0x600090]
push eax
lea ecx, [esp + 0x8c]
call fcn.005e2d2c
mov eax, 0x384
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], eax
lea ecx, [esp + 0x140]
push 0x6359b8
push ecx
call ebx
add esp, 8
lea edx, [esp + 0x124]
push edx
call dword [0x600090]
push eax
lea ecx, [esp + 0xc8]
call fcn.005e2d2c
mov ecx, dword [esp + 0x54]
lea eax, [esp + 0x124]
push eax
push 0x5c
mov edx, dword [ecx + 4]
push edx
call dword [0x60008c]
fild dword [esi + 0x244]
fmul qword [0x608a60]
call fcn.005e35c0
fild dword [esi + 0x248]
mov dword [esp + 0x124], eax
fmul qword [0x608a60]
call fcn.005e35c0
mov dword [esp + 0x128], eax
lea eax, [esp + 0x140]
push 0x6359ac
push eax
mov dword [esp + 0x13c], 0x2bc
mov byte [esp + 0x143], 0
call ebx
add esp, 8
lea ecx, [esp + 0x124]
push ecx
call dword [0x600090]
push eax
lea ecx, [esp + 0x84]
call fcn.005e2d2c
mov edx, dword [edi]
lea eax, [esp + 0x88]
push eax
mov ecx, edi
call dword [edx + 0x30]
mov edx, dword [edi + 4]
lea ecx, [esp + 0x2c]
push ecx
push 1
push 0x62d420
push edx
call dword [0x600030]
mov eax, dword [0x646554]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
add eax, ecx
mov dword [esi + 0x23c], eax
lea eax, [esi + 0x21c]
mov dword [esi + 0x240], edx
mov edx, dword [esp + 0xb4]
mov ecx, eax
push 0x639818
mov dword [ecx], edx
mov edx, dword [esp + 0xbc]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0xc0]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0xc4]
mov dword [ecx + 0xc], edx
mov ecx, dword [esi + 0x240]
mov edx, dword [eax]
lea ecx, [ecx + ecx*2]
lea eax, [edx + ecx*2]
mov dword [esi + 0x22c], eax
mov eax, dword [esi + 0x240]
mov edx, dword [esi + 0x224]
lea ecx, [eax + eax*2]
sub edx, ecx
mov dword [esi + 0x234], edx
mov eax, dword [esi + 0x4f4]
push eax
call dword [0x600a74]
add esp, 8
test eax, eax
jne 0x4f5d9e
mov ecx, dword [esi + 0x23c]
mov edx, dword [esi + 0x220]
lea eax, [edx + ecx*2]
mov dword [esi + 0x230], eax
jmp 0x4f5db5
mov eax, dword [esi + 0x23c]
lea ecx, [eax + eax*2]
mov eax, dword [esi + 0x220]
add ecx, eax
mov dword [esi + 0x230], ecx
mov eax, dword [esi + 0x268]
test eax, eax
je 0x4f5dd3
fild dword [esi + 0x228]
fild dword [esi + 0x23c]
fmul qword [0x608b40]
jmp 0x4f5dfa
mov eax, dword [esi + 0x240]
lea edx, [eax + eax*4]
mov eax, dword [esi + 0x228]
shl edx, 1
sub eax, edx
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fild dword [esi + 0x23c]
fmul qword [0x60d290]
fsubp st(1)
call fcn.005e35c0
mov dword [esi + 0x238], eax
sub esp, 0x10
lea eax, [esi + 0x22c]
mov ecx, esp
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov ecx, esi
call fcn.004f8e50
xor ecx, ecx
mov eax, 0x603f0c
mov dword [esp + 0x94], ecx
mov dword [esp + 0x90], eax
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xac], eax
mov dword [esp + 0xe0], ecx
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xe4], eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], eax
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd8], ecx
mov dword [esp + 0xd4], eax
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa0], eax
mov eax, dword [0x6314f0]
mov ebx, dword [0x600098]
push eax
push 1
push 2
mov byte [esp + 0x1bc], 0x10
call ebx
push eax
lea ecx, [esp + 0x94]
call fcn.005e2d2c
mov eax, dword [0x6314f0]
push eax
push 1
push 0
call ebx
push eax
lea ecx, [esp + 0xb0]
call fcn.005e2d2c
cmp dword [esi + 0x330], 3
je 0x4f5ef5
mov ecx, dword [esi + 0x338]
mov dword [esp + 0x4c], ecx
jmp 0x4f5efd
mov dword [esp + 0x4c], 1
mov eax, dword [esp + 0x4c]
cdq
sub eax, edx
sar eax, 1
cmp eax, 1
mov dword [esp + 0x10], eax
jge 0x4f5f17
mov dword [esp + 0x10], 1
mov eax, dword [0x6314e4]
mov edx, dword [esp + 0x4c]
push eax
push edx
push 0
call ebx
push eax
lea ecx, [esp + 0xe0]
call fcn.005e2d2c
mov eax, dword [0x6314e8]
push eax
mov eax, dword [esp + 0x50]
push eax
push 0
call ebx
push eax
lea ecx, [esp + 0xe8]
call fcn.005e2d2c
mov eax, dword [0x6314e4]
mov ecx, dword [esp + 0x10]
or eax, 0x7f7f7f
push eax
push ecx
push 0
call ebx
push eax
lea ecx, [esp + 0x7c]
call fcn.005e2d2c
mov eax, dword [0x6314e8]
mov edx, dword [esp + 0x10]
or eax, 0x7f7f7f
push eax
push edx
push 0
call ebx
push eax
lea ecx, [esp + 0xd0]
call fcn.005e2d2c
mov eax, dword [0x6314e8]
mov ecx, dword [0x6314e4]
or eax, ecx
push eax
mov eax, dword [esp + 0x14]
push eax
push 0
call ebx
push eax
lea ecx, [esp + 0xd8]
call fcn.005e2d2c
mov eax, dword [0x6314e0]
mov ecx, dword [esp + 0x10]
push eax
push ecx
push 0
call ebx
push eax
lea ecx, [esp + 0xa4]
call fcn.005e2d2c
push 1
mov ecx, edi
call fcn.005e2e10
mov eax, dword [0x640790]
mov edx, dword [edi]
push eax
mov ecx, edi
call dword [edx + 0x38]
lea ecx, [esp + 0x90]
push ecx
mov ecx, edi
call fcn.005e2e04
mov dword [esp + 0xf8], eax
mov eax, dword [esi + 0x334]
test eax, eax
jne 0x4f6147
xor ebx, ebx
mov dword [esp + 0x10], ebx
mov eax, dword [esi + 0x230]
mov ecx, dword [esi + 0x238]
sub ecx, eax
mov eax, 0x66666667
imul ecx, ebx
imul ecx
mov ecx, dword [esi + 0x230]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
add edx, ecx
mov ecx, dword [esi + 0x22c]
mov dword [esp + 0x4c], edx
push edx
lea edx, [esp + 0x44]
push ecx
push edx
mov ecx, edi
call fcn.005e2dfe
mov eax, dword [esp + 0x4c]
mov ecx, dword [esi + 0x234]
push eax
push ecx
mov ecx, edi
call fcn.005e2df8
fld qword [esi + 0x88]
fsub qword [esi + 0x90]
fimul dword [esp + 0x10]
lea ecx, [esp + 0x14]
fmul qword [0x6034e0]
fsubr qword [esi + 0x88]
fstp qword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
push edx
push eax
push ecx
call fcn.005440d0
add esp, 0xc
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x11
call fcn.005e2a44
lea ecx, [esp + 0x14]
mov byte [esp + 0x1b0], 0x10
call fcn.005e2954
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
fild dword [esp + 0x4c]
fild dword [esi + 0x23c]
fmul qword [0x6031b8]
fsubp st(1)
call fcn.005e35c0
mov ecx, dword [esi + 0x22c]
mov edx, dword [esp + 0x18]
sub ecx, edx
mov dword [esp + 0x48], eax
mov dword [esp + 0x24], ecx
fild dword [esp + 0x24]
fild dword [esi + 0x240]
fmul qword [0x6031b8]
fsubp st(1)
call fcn.005e35c0
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx - 8]
mov dword [esp + 0x24], edx
push dword [esp + 0x24]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x50]
push ecx
push eax
mov ecx, edi
call dword [edx + 0x64]
inc ebx
cmp ebx, 0xb
mov dword [esp + 0x10], ebx
jl 0x4f600e
jmp 0x4f63de
fld qword [esi + 0x90]
fcom qword [0x603518]
xor ecx, ecx
mov dword [esp + 0x10], ecx
fnstsw ax
test ah, 0x41
jne 0x4f6178
fmul qword [0x6034e0]
inc ecx
fcom qword [0x603518]
fnstsw ax
test ah, 0x41
je 0x4f6160
mov dword [esp + 0x10], ecx
fcom qword [0x6018a8]
fnstsw ax
test ah, 1
je 0x4f619d
fmul qword [0x603518]
dec ecx
fcom qword [0x6018a8]
fnstsw ax
test ah, 1
jne 0x4f6185
mov dword [esp + 0x10], ecx
fld st(0)
call fcn.005e35c0
mov ecx, eax
mov dword [esp + 0x4c], ecx
fild dword [esp + 0x4c]
fadd qword [0x605340]
fxch st(1)
fcompp
fnstsw ax
test ah, 0x41
lea eax, [ecx + 1]
je 0x4f61c4
mov eax, ecx
cmp eax, 0xa
mov dword [esp + 0x180], eax
mov edx, 1
jne 0x4f61d7
mov edx, eax
lea ecx, [esp + 0x184]
mov ebx, 9
mov eax, dword [ecx - 4]
add eax, edx
cmp eax, 0xa
mov dword [ecx], eax
jl 0x4f61f4
mov edx, 0xa
add ecx, 4
dec ebx
jne 0x4f61e3
mov ecx, dword [esi + 0x238]
mov eax, dword [esi + 0x230]
sub ecx, eax
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul qword [esi + 0x258]
fadd qword [0x603788]
call fcn.005e35c0
fld qword [0x603518]
fild dword [esp + 0x10]
mov dword [esp + 0x38], eax
call fcn.005e3796
fstp qword [esp + 0xec]
lea edx, [esp + 0x180]
mov dword [esp + 0x14], 0xa
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x24], ecx
fild dword [esp + 0x24]
fmul qword [esp + 0xec]
mov edx, dword [esi + 0x238]
fstp qword [esp + 0x2c]
mov dword [esp + 0x48], edx
fild dword [esp + 0x48]
fldlg2
fld qword [esp + 0x2c]
fyl2x
fldlg2
fld qword [esi + 0x90]
fyl2x
fsubp st(1)
fdiv qword [esi + 0x258]
fsubp st(1)
call fcn.005e35c0
mov ebx, eax
mov eax, dword [esi + 0x230]
mov dword [esp + 0x4c], ebx
lea ecx, [eax - 1]
cmp ebx, ecx
jl 0x4f63c4
cmp ebx, eax
jl 0x4f62da
cmp ebx, dword [esp + 0x48]
jg 0x4f62da
mov edx, dword [esi + 0x22c]
push ebx
lea eax, [esp + 0x74]
push edx
push eax
mov ecx, edi
call fcn.005e2dfe
mov ecx, dword [esi + 0x234]
push ebx
push ecx
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esp + 0x24]
cmp eax, 1
je 0x4f6300
cmp eax, 2
je 0x4f6300
cmp eax, 5
je 0x4f6300
cmp eax, 0xa
je 0x4f6300
cmp eax, 0x14
je 0x4f6300
cmp eax, 0x32
jne 0x4f63b5
cmp dword [esp + 0x38], 5
jl 0x4f6315
cmp eax, 1
je 0x4f6315
cmp eax, 0xa
jne 0x4f63b5
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
push edx
lea ecx, [esp + 0x1c]
push eax
push ecx
call fcn.005440d0
add esp, 0xc
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x12
call fcn.005e2a44
lea ecx, [esp + 0x18]
mov byte [esp + 0x1b0], 0x10
call fcn.005e2954
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov edx, dword [edi + 4]
mov ecx, dword [eax - 8]
push ecx
push eax
push edx
call dword [0x600030]
fild dword [esp + 0x4c]
fild dword [esi + 0x23c]
mov eax, dword [esp + 0xc]
mov ebx, dword [edi]
fmul qword [0x6031b8]
mov ecx, dword [eax - 8]
push ecx
push eax
fsubp st(1)
call fcn.005e35c0
mov edx, dword [esi + 0x22c]
push eax
sub edx, dword [esp + 0x4c]
mov dword [esp + 0x54], edx
fild dword [esp + 0x54]
fild dword [esi + 0x240]
fmul qword [0x6031b8]
fsubp st(1)
call fcn.005e35c0
push eax
mov ecx, edi
call dword [ebx + 0x64]
fld qword [esp + 0x2c]
fmul qword [0x603518]
jmp 0x4f6263
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
add ecx, 4
dec eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
jne 0x4f624e
mov dword [esp + 0x10], 0
mov ebx, dword [esi + 0x22c]
mov ecx, dword [esi + 0x234]
sub ecx, ebx
mov eax, 0x66666667
imul ecx, dword [esp + 0x10]
imul ecx
sar edx, 2
mov ecx, dword [esi + 0x230]
mov eax, edx
shr eax, 0x1f
add edx, eax
push ecx
add edx, ebx
mov ecx, edi
mov ebx, edx
lea edx, [esp + 0x74]
push ebx
push edx
call fcn.005e2dfe
mov eax, dword [esi + 0x238]
mov ecx, edi
push eax
push ebx
call fcn.005e2df8
fld qword [esi + 0x60]
fsub qword [esi + 0x68]
fimul dword [esp + 0x10]
mov eax, dword [esi + 0x268]
test eax, eax
fmul qword [0x6034e0]
fadd qword [esi + 0x68]
fstp qword [esp + 0x24]
je 0x4f64d1
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
push ecx
push edx
lea eax, [esp + 0x14]
push 0x62d5e8
push eax
call fcn.005e2b16
add esp, 0x10
lea ecx, [esp + 0xc]
call fcn.005e2b52
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
fild dword [esi + 0x23c]
fmul qword [0x608b50]
fiadd dword [esi + 0x238]
call fcn.005e35c0
mov ecx, eax
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
sar eax, 1
sub ebx, eax
mov eax, dword [esp + 0xc]
mov edx, dword [eax - 8]
mov dword [esp + 0x18], edx
push dword [esp + 0x18]
mov edx, dword [edi]
push eax
push ecx
push ebx
mov ecx, edi
call dword [edx + 0x64]
jmp 0x4f6611
fld qword [esp + 0x24]
call fcn.005e35c0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], 0
fild qword [esp + 0x2c]
mov ecx, dword [esi + 0x210]
add ecx, eax
fsubr qword [esp + 0x24]
mov dword [esp + 0x58], ecx
fmul qword [0x6037d8]
call fcn.005e35c0
xor ecx, ecx
mov cx, word [esi + 0x214]
sub ecx, eax
cmp ecx, 0x3e8
jbe 0x4f652e
mov eax, dword [esp + 0x58]
add ecx, 0xfffffc18
inc eax
mov word [esp + 0x5c], cx
mov dword [esp + 0x58], eax
jmp 0x4f6533
mov word [esp + 0x5c], cx
mov eax, dword [esp + 0x58]
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], eax
call fcn.005e2e6a
mov ecx, dword [eax]
push 0
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0x24]
call fcn.005e2e6a
mov edx, dword [eax + 4]
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], edx
call fcn.005e2e6a
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 8]
and ecx, 0xffff
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push ecx
push eax
lea edx, [esp + 0x1c]
push 0x635984
push edx
call fcn.005e2b16
mov eax, dword [edi]
add esp, 0x18
lea ecx, [esp + 0xc4]
push ecx
mov ecx, edi
call dword [eax + 0x30]
mov eax, dword [esp + 0xc]
lea edx, [esp + 0xec]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov eax, dword [esi + 0x240]
cdq
sub eax, edx
mov edx, dword [esi + 0x238]
mov ecx, eax
mov eax, dword [esp + 0xec]
sar ecx, 1
add ecx, edx
add ecx, eax
mov eax, dword [esi + 0x23c]
cdq
sub eax, edx
sar eax, 1
sub ebx, eax
mov eax, dword [esp + 0xc]
mov edx, dword [eax - 8]
mov dword [esp + 0x18], edx
push dword [esp + 0x18]
mov edx, dword [edi]
push eax
push ecx
push ebx
mov ecx, edi
call dword [edx + 0x64]
mov eax, dword [edi]
lea ecx, [esp + 0x88]
push ecx
mov ecx, edi
call dword [eax + 0x30]
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 0xb
mov dword [esp + 0x10], eax
jl 0x4f63e6
lea eax, [esi + 0x4f4]
lea ecx, [esp + 0xc]
push eax
call fcn.005e2a44
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov eax, dword [esi + 0x23c]
mov edx, dword [esi + 0x234]
mov ebx, dword [esi + 0x230]
lea ecx, [eax + eax*2]
mov eax, dword [esi + 0x22c]
add eax, edx
sub ebx, ecx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar ecx, 1
sar eax, 1
sub ecx, eax
mov eax, dword [edx - 8]
mov edx, dword [edi]
push eax
mov eax, dword [esp + 0x10]
push eax
push ebx
push ecx
mov ecx, edi
call dword [edx + 0x64]
mov ecx, dword [esi + 0x70]
push 0x639818
push ecx
call dword [0x600a74]
add esp, 8
test eax, eax
je 0x4f6735
lea edx, [esi + 0x74]
push 0x62ec54
lea eax, [esp + 0x18]
push edx
push eax
call fcn.005e2a32
lea ecx, [esi + 0x70]
mov bl, 0x13
push ecx
lea ecx, [esp + 0x3c]
push eax
push ecx
mov byte [esp + 0x1bc], bl
call fcn.005e2a2c
push 0x62d298
lea edx, [esp + 0x1c]
push eax
push edx
mov byte [esp + 0x1bc], 0x14
call fcn.005e2a32
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x15
call fcn.005e2a44
lea ecx, [esp + 0x18]
mov byte [esp + 0x1b0], 0x14
call fcn.005e2954
lea ecx, [esp + 0x38]
mov byte [esp + 0x1b0], bl
call fcn.005e2954
lea ecx, [esp + 0x14]
mov byte [esp + 0x1b0], 0x10
call fcn.005e2954
jmp 0x4f6742
lea eax, [esi + 0x74]
lea ecx, [esp + 0xc]
push eax
call fcn.005e2a44
mov eax, dword [esi + 0x268]
test eax, eax
mov eax, dword [esp + 0xc]
mov ecx, dword [eax - 8]
je 0x4f67a6
lea edx, [esp + 0x40]
push edx
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
fild dword [esi + 0x23c]
fmul qword [0x60d288]
fiadd dword [esi + 0x238]
call fcn.005e35c0
mov edx, dword [esi + 0x234]
mov ebx, eax
mov eax, dword [esi + 0x22c]
add eax, edx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar ecx, 1
sar eax, 1
sub ecx, eax
mov eax, dword [edx - 8]
jmp 0x4f67f0
lea edx, [esp + 0x40]
push edx
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov eax, dword [esi + 0x240]
mov edx, dword [esi + 0x238]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x22c]
lea ebx, [edx + ecx*2]
mov edx, dword [esi + 0x234]
add eax, edx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
sar ecx, 1
sar eax, 1
sub ecx, eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax - 8]
mov edx, dword [edi]
push eax
mov eax, dword [esp + 0x10]
push eax
push ebx
push ecx
mov ecx, edi
call dword [edx + 0x64]
lea ecx, [esp + 0xac]
push ecx
mov ecx, edi
call fcn.005e2e04
mov edx, dword [esi + 0x230]
mov eax, dword [esi + 0x22c]
push edx
lea ecx, [esp + 0x74]
push eax
push ecx
mov ecx, edi
call fcn.005e2dfe
mov edx, dword [esi + 0x230]
mov eax, dword [esi + 0x234]
push edx
push eax
mov ecx, edi
call fcn.005e2df8
mov ecx, dword [esi + 0x238]
mov edx, dword [esi + 0x234]
push ecx
push edx
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esi + 0x238]
mov ecx, dword [esi + 0x22c]
push eax
push ecx
mov ecx, edi
call fcn.005e2df8
mov edx, dword [esi + 0x230]
mov eax, dword [esi + 0x22c]
push edx
push eax
mov ecx, edi
call fcn.005e2df8
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0x60d270
mov eax, dword [esi + 0x238]
mov ecx, dword [esi + 0x234]
mov edx, dword [esi + 0x230]
mov ebx, dword [esi + 0x22c]
push eax
push ecx
push edx
push ebx
mov byte [esp + 0x1c0], 0x16
call dword [0x600038]
push eax
lea ecx, [esp + 0x9c]
call fcn.005e2d2c
lea ecx, [esp + 0x98]
push 5
push ecx
mov ecx, edi
call fcn.005e3182
push edi
mov ecx, esi
call fcn.004fb7d0
push 5
push 0
mov ecx, edi
call fcn.005e3182
push 1
mov ecx, edi
call fcn.005e2e10
push edi
mov ecx, esi
call fcn.004fbe30
mov eax, dword [0x640790]
mov edx, dword [edi]
push eax
mov ecx, edi
call dword [edx + 0x38]
mov eax, dword [esi + 0x350]
test eax, eax
je 0x4f6a66
mov ecx, dword [esi + 0x35c]
mov edx, dword [esi + 0x358]
push ecx
push edx
mov ecx, esi
call fcn.004f91e0
mov dword [esi + 0x340], eax
mov eax, dword [esi + 0x350]
cmp eax, 1
jne 0x4f698b
lea eax, [esp + 0x78]
mov ecx, edi
push eax
call fcn.005e2e04
mov eax, dword [0x6314e4]
mov edx, dword [edi]
push eax
mov ecx, edi
call dword [edx + 0x38]
mov ecx, dword [esi + 0x364]
mov edx, dword [esi + 0x360]
push ecx
push edx
mov ecx, esi
call fcn.004f9130
mov ecx, dword [esi + 0x360]
mov edx, dword [esi + 0x364]
mov dword [esi + 0x344], eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], edx
mov ebx, eax
jmp 0x4f6992
mov ebx, dword [esp + 0xa8]
mov eax, dword [esi + 0x340]
mov ecx, dword [esi + 0x22c]
cmp eax, ecx
jl 0x4f6a66
cmp eax, dword [esi + 0x234]
jg 0x4f6a66
mov ecx, dword [esi + 0x230]
cmp ebx, ecx
jl 0x4f6a66
cmp ebx, dword [esi + 0x238]
jg 0x4f6a66
push ecx
push eax
lea eax, [esp + 0x78]
mov ecx, edi
push eax
call fcn.005e2dfe
mov ecx, dword [esi + 0x238]
mov edx, dword [esi + 0x340]
push ecx
push edx
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esi + 0x22c]
push ebx
lea ecx, [esp + 0x74]
push eax
push ecx
mov ecx, edi
call fcn.005e2dfe
mov edx, dword [esi + 0x234]
push ebx
push edx
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esi + 0x380]
test eax, eax
je 0x4f6bbe
push 0x62fee8
lea ecx, [esp + 0x18]
call fcn.005e2d44
mov ecx, dword [esp + 0x14]
mov eax, dword [esi + 0x340]
mov byte [esp + 0x1b0], 0x17
mov edx, dword [ecx - 8]
mov dword [esp + 0x18], edx
push dword [esp + 0x18]
mov edx, dword [edi]
push ecx
push ebx
push eax
mov ecx, edi
call dword [edx + 0x64]
lea ecx, [esp + 0x14]
mov byte [esp + 0x1b0], 0x16
call fcn.005e2954
mov eax, dword [esi + 0x380]
test eax, eax
je 0x4f6bbe
mov eax, dword [esi + 0x38c]
mov ecx, dword [esi + 0x388]
push eax
push ecx
mov ecx, esi
call fcn.004f91e0
mov dword [esi + 0x370], eax
mov eax, dword [esi + 0x380]
cmp eax, 1
jne 0x4f6ae7
lea edx, [esp + 0x78]
mov ecx, edi
push edx
call fcn.005e2e04
mov ecx, dword [0x6314e4]
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x38]
mov edx, dword [esi + 0x394]
mov eax, dword [esi + 0x390]
push edx
push eax
mov ecx, esi
call fcn.004f9130
mov ecx, dword [esi + 0x390]
mov edx, dword [esi + 0x394]
mov dword [esi + 0x374], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
mov ebx, eax
jmp 0x4f6aee
mov ebx, dword [esp + 0xa8]
mov eax, dword [esi + 0x370]
mov ecx, dword [esi + 0x22c]
cmp eax, ecx
jl 0x4f6bbe
cmp eax, dword [esi + 0x234]
jg 0x4f6bbe
mov ecx, dword [esi + 0x230]
cmp ebx, ecx
jl 0x4f6bbe
cmp ebx, dword [esi + 0x238]
jg 0x4f6bbe
push ecx
push eax
lea eax, [esp + 0x78]
mov ecx, edi
push eax
call fcn.005e2dfe
mov ecx, dword [esi + 0x238]
mov edx, dword [esi + 0x370]
push ecx
push edx
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esi + 0x22c]
push ebx
lea ecx, [esp + 0x74]
push eax
push ecx
mov ecx, edi
call fcn.005e2dfe
mov edx, dword [esi + 0x234]
push ebx
push edx
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esi + 0x350]
test eax, eax
je 0x4f6bbe
push 0x62fee4
lea ecx, [esp + 0x18]
call fcn.005e2d44
mov ecx, dword [esp + 0x14]
mov eax, dword [esi + 0x370]
mov byte [esp + 0x1b0], 0x18
mov edx, dword [ecx - 8]
mov dword [esp + 0x18], edx
push dword [esp + 0x18]
mov edx, dword [edi]
push ecx
push ebx
push eax
mov ecx, edi
call dword [edx + 0x64]
lea ecx, [esp + 0x14]
mov byte [esp + 0x1b0], 0x16
call fcn.005e2954
mov eax, dword [esi + 0x350]
test eax, eax
je 0x4f72a7
mov ecx, dword [esi + 0x380]
test ecx, ecx
je 0x4f70ae
cmp eax, ecx
jne 0x4f6bf3
cmp eax, 1
jne 0x4f6c08
mov ecx, dword [0x6314e4]
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x38]
jmp 0x4f6c08
mov eax, dword [0x6314e8]
mov ebx, dword [0x6314e4]
mov edx, dword [edi]
or eax, ebx
push eax
mov ecx, edi
call dword [edx + 0x38]
mov eax, dword [esi + 0x268]
mov ecx, dword [esi + 0x358]
mov edx, dword [esi + 0x35c]
mov dword [esp + 0x24], ecx
test eax, eax
mov dword [esp + 0x28], edx
je 0x4f6c4a
mov eax, edx
lea edx, [esp + 0x34]
push eax
push ecx
push 0x635970
push edx
call fcn.005e2b16
add esp, 0x10
lea ecx, [esp + 0x34]
call fcn.005e2b52
jmp 0x4f6cf5
fld qword [esp + 0x24]
call fcn.005e35c0
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0
fild qword [esp + 0x18]
mov ebx, dword [esi + 0x210]
add ebx, eax
fsubr qword [esp + 0x24]
fmul qword [0x6037d8]
call fcn.005e35c0
xor ecx, ecx
mov cx, word [esi + 0x214]
sub ecx, eax
cmp ecx, 0x3e8
jbe 0x4f6c9b
add ecx, 0xfffffc18
inc ebx
mov word [esp + 0x5c], cx
jmp 0x4f6ca0
mov word [esp + 0x5c], cx
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.005e2e6a
mov ebx, dword [eax]
push 0
lea ecx, [esp + 0x24]
call fcn.005e2e6a
mov eax, dword [eax + 4]
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], eax
call fcn.005e2e6a
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 8]
and ecx, 0xffff
push ecx
push ebx
push edx
push eax
lea eax, [esp + 0x44]
push 0x635984
push eax
call fcn.005e2b16
add esp, 0x18
mov eax, dword [esi + 0x268]
mov ecx, dword [esi + 0x388]
mov edx, dword [esi + 0x38c]
mov dword [esp + 0x24], ecx
test eax, eax
mov dword [esp + 0x28], edx
je 0x4f6d37
mov eax, edx
lea edx, [esp + 0x3c]
push eax
push ecx
push 0x635970
push edx
call fcn.005e2b16
add esp, 0x10
lea ecx, [esp + 0x3c]
call fcn.005e2b52
jmp 0x4f6de2
fld qword [esp + 0x24]
call fcn.005e35c0
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0
fild qword [esp + 0x18]
mov ebx, dword [esi + 0x210]
add ebx, eax
fsubr qword [esp + 0x24]
fmul qword [0x6037d8]
call fcn.005e35c0
xor ecx, ecx
mov cx, word [esi + 0x214]
sub ecx, eax
cmp ecx, 0x3e8
jbe 0x4f6d88
add ecx, 0xfffffc18
inc ebx
mov word [esp + 0x5c], cx
jmp 0x4f6d8d
mov word [esp + 0x5c], cx
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.005e2e6a
mov ebx, dword [eax]
push 0
lea ecx, [esp + 0x24]
call fcn.005e2e6a
mov eax, dword [eax + 4]
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], eax
call fcn.005e2e6a
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 8]
and ecx, 0xffff
push ecx
push ebx
push edx
push eax
lea eax, [esp + 0x4c]
push 0x635984
push eax
call fcn.005e2b16
add esp, 0x18
mov ecx, dword [esi + 0x70]
lea edx, [esp + 0x64]
fld qword [esi + 0x388]
fsub qword [esi + 0x358]
push ecx
sub esp, 8
fstp qword [esp]
push 0x63595c
push edx
call fcn.005e2b16
add esp, 0x14
lea ecx, [esp + 0x64]
call fcn.005e2b52
lea eax, [esp + 0x34]
lea ecx, [esp + 0x48]
push eax
push 0x635954
push ecx
call fcn.005e2a38
push 0x635948
lea edx, [esp + 0x28]
push eax
push edx
mov byte [esp + 0x1bc], 0x19
call fcn.005e2a32
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x14]
push ecx
push eax
push edx
mov byte [esp + 0x1bc], 0x1a
call fcn.005e2a2c
push 0x635934
push eax
lea eax, [esp + 0x40]
mov byte [esp + 0x1b8], 0x1b
push eax
call fcn.005e2a32
lea ecx, [esp + 0x64]
lea edx, [esp + 0x18]
push ecx
mov bl, 0x1c
push eax
push edx
mov byte [esp + 0x1bc], bl
call fcn.005e2a2c
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x1d
call fcn.005e2a44
lea ecx, [esp + 0x18]
mov byte [esp + 0x1b0], bl
call fcn.005e2954
lea ecx, [esp + 0x38]
mov byte [esp + 0x1b0], 0x1b
call fcn.005e2954
lea ecx, [esp + 0x14]
mov byte [esp + 0x1b0], 0x1a
call fcn.005e2954
lea ecx, [esp + 0x24]
mov byte [esp + 0x1b0], 0x19
call fcn.005e2954
lea ecx, [esp + 0x48]
mov byte [esp + 0x1b0], 0x16
call fcn.005e2954
mov eax, dword [esi + 0x98]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
push eax
push ecx
push edx
lea eax, [esp + 0x40]
push 0x635928
push eax
call fcn.005e2b16
mov ecx, dword [esi + 0x98]
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
push ecx
push edx
push eax
lea ecx, [esp + 0x5c]
push 0x635928
push ecx
call fcn.005e2b16
mov edx, dword [esi + 0x98]
add esp, 0x28
fld qword [esp + 0x2c]
fsub qword [esp + 0x4c]
push edx
lea eax, [esp + 0x68]
sub esp, 8
fstp qword [esp]
push 0x635928
push eax
call fcn.005e2b16
add esp, 0x14
lea ecx, [esp + 0xc]
lea edx, [esp + 0x4c]
push 0x63591c
push ecx
push edx
call fcn.005e2a32
lea ecx, [esp + 0x34]
lea edx, [esp + 0x48]
push ecx
push eax
push edx
mov byte [esp + 0x1bc], 0x1e
call fcn.005e2a2c
push 0x635910
push eax
lea eax, [esp + 0x2c]
mov byte [esp + 0x1b8], 0x1f
push eax
call fcn.005e2a32
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x14]
push ecx
push eax
push edx
mov byte [esp + 0x1bc], 0x20
call fcn.005e2a2c
push 0x6358fc
push eax
lea eax, [esp + 0x40]
mov byte [esp + 0x1b8], 0x21
push eax
call fcn.005e2a32
lea ecx, [esp + 0x64]
lea edx, [esp + 0x18]
push ecx
mov bl, 0x22
push eax
push edx
mov byte [esp + 0x1bc], bl
call fcn.005e2a2c
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x23
call fcn.005e2a44
lea ecx, [esp + 0x18]
mov byte [esp + 0x1b0], bl
call fcn.005e2954
lea ecx, [esp + 0x38]
mov byte [esp + 0x1b0], 0x21
call fcn.005e2954
lea ecx, [esp + 0x14]
mov byte [esp + 0x1b0], 0x20
call fcn.005e2954
mov byte [esp + 0x1b0], 0x1f
lea ecx, [esp + 0x24]
call fcn.005e2954
lea ecx, [esp + 0x48]
mov byte [esp + 0x1b0], 0x1e
call fcn.005e2954
lea ecx, [esp + 0x4c]
mov byte [esp + 0x1b0], 0x16
call fcn.005e2954
mov eax, dword [esi + 0x3c8]
test eax, eax
jne 0x4f74b4
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov ebx, dword [esi + 0x230]
mov eax, dword [esi + 0x23c]
mov edx, dword [esi + 0x234]
sub ebx, eax
mov eax, dword [esi + 0x22c]
add eax, edx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x40]
sar ecx, 1
jmp 0x4f7489
test eax, eax
je 0x4f72a7
mov edx, dword [edi]
cmp eax, 1
mov eax, dword [0x6314e4]
je 0x4f70c7
mov eax, dword [0x6314e8]
push eax
mov ecx, edi
call dword [edx + 0x38]
mov eax, dword [esi + 0x268]
mov ecx, dword [esi + 0x358]
mov edx, dword [esi + 0x35c]
mov dword [esp + 0x24], ecx
test eax, eax
mov dword [esp + 0x28], edx
je 0x4f710f
mov eax, edx
lea edx, [esp + 0x34]
push eax
push ecx
push 0x635970
push edx
call fcn.005e2b16
add esp, 0x10
lea ecx, [esp + 0x34]
call fcn.005e2b52
jmp 0x4f71ba
fld qword [esp + 0x24]
call fcn.005e35c0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], 0
fild qword [esp + 0x2c]
mov ebx, dword [esi + 0x210]
add ebx, eax
fsubr qword [esp + 0x24]
fmul qword [0x6037d8]
call fcn.005e35c0
xor ecx, ecx
mov cx, word [esi + 0x214]
sub ecx, eax
cmp ecx, 0x3e8
jbe 0x4f7160
add ecx, 0xfffffc18
inc ebx
mov word [esp + 0x5c], cx
jmp 0x4f7165
mov word [esp + 0x5c], cx
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.005e2e6a
mov ebx, dword [eax]
push 0
lea ecx, [esp + 0x24]
call fcn.005e2e6a
mov eax, dword [eax + 4]
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], eax
call fcn.005e2e6a
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 8]
and ecx, 0xffff
push ecx
push ebx
push edx
push eax
lea eax, [esp + 0x44]
push 0x635984
push eax
call fcn.005e2b16
add esp, 0x18
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x364]
mov eax, dword [esi + 0x360]
push ecx
push edx
push eax
lea ecx, [esp + 0x48]
push 0x635928
push ecx
call fcn.005e2b16
add esp, 0x14
lea edx, [esp + 0x34]
lea eax, [esp + 0x38]
push 0x62ede8
push edx
push eax
call fcn.005e2a32
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x18]
push ecx
mov bl, 0x24
push eax
push edx
mov byte [esp + 0x1bc], bl
call fcn.005e2a2c
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x25
call fcn.005e2a44
lea ecx, [esp + 0x18]
mov byte [esp + 0x1b0], bl
call fcn.005e2954
lea ecx, [esp + 0x38]
mov byte [esp + 0x1b0], 0x16
call fcn.005e2954
mov eax, dword [esi + 0x3c8]
test eax, eax
jne 0x4f72a7
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov ebx, dword [esi + 0x230]
mov eax, dword [esi + 0x23c]
mov edx, dword [esi + 0x234]
sub ebx, eax
mov eax, dword [esi + 0x22c]
add eax, edx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar ecx, 1
sar eax, 1
sub ecx, eax
mov eax, dword [edx - 8]
mov edx, dword [edi]
push eax
mov eax, dword [esp + 0x10]
push eax
push ebx
push ecx
mov ecx, edi
call dword [edx + 0x64]
mov eax, dword [esi + 0x380]
test eax, eax
je 0x4f74a6
mov edx, dword [edi]
cmp eax, 1
mov eax, dword [0x6314e4]
je 0x4f72c6
mov eax, dword [0x6314e8]
push eax
mov ecx, edi
call dword [edx + 0x38]
mov eax, dword [esi + 0x268]
mov ecx, dword [esi + 0x388]
mov edx, dword [esi + 0x38c]
mov dword [esp + 0x24], ecx
test eax, eax
mov dword [esp + 0x28], edx
je 0x4f730e
mov eax, edx
lea edx, [esp + 0x34]
push eax
push ecx
push 0x635970
push edx
call fcn.005e2b16
add esp, 0x10
lea ecx, [esp + 0x34]
call fcn.005e2b52
jmp 0x4f73b9
fld qword [esp + 0x24]
call fcn.005e35c0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], 0
fild qword [esp + 0x2c]
mov ebx, dword [esi + 0x210]
add ebx, eax
fsubr qword [esp + 0x24]
fmul qword [0x6037d8]
call fcn.005e35c0
xor ecx, ecx
mov cx, word [esi + 0x214]
sub ecx, eax
cmp ecx, 0x3e8
jbe 0x4f735f
add ecx, 0xfffffc18
inc ebx
mov word [esp + 0x5c], cx
jmp 0x4f7364
mov word [esp + 0x5c], cx
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.005e2e6a
mov ebx, dword [eax]
push 0
lea ecx, [esp + 0x24]
call fcn.005e2e6a
mov eax, dword [eax + 4]
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], eax
call fcn.005e2e6a
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 8]
and ecx, 0xffff
push ecx
push ebx
push edx
push eax
lea eax, [esp + 0x44]
push 0x635984
push eax
call fcn.005e2b16
add esp, 0x18
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x394]
mov eax, dword [esi + 0x390]
push ecx
push edx
push eax
lea ecx, [esp + 0x48]
push 0x635928
push ecx
call fcn.005e2b16
add esp, 0x14
lea edx, [esp + 0x34]
lea eax, [esp + 0x38]
push 0x62ede8
push edx
push eax
call fcn.005e2a32
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x18]
push ecx
mov bl, 0x26
push eax
push edx
mov byte [esp + 0x1bc], bl
call fcn.005e2a2c
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x27
call fcn.005e2a44
lea ecx, [esp + 0x18]
mov byte [esp + 0x1b0], bl
call fcn.005e2954
lea ecx, [esp + 0x38]
mov byte [esp + 0x1b0], 0x16
call fcn.005e2954
mov eax, dword [esi + 0x3c8]
test eax, eax
jne 0x4f74b4
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov ebx, dword [esi + 0x230]
mov eax, dword [esi + 0x23c]
mov edx, dword [esi + 0x234]
sub ebx, eax
mov eax, dword [esi + 0x22c]
add eax, edx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x40]
sar ecx, 1
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar eax, 1
sub ecx, eax
mov eax, dword [edx - 8]
mov edx, dword [edi]
push eax
mov eax, dword [esp + 0x10]
push eax
push ebx
push ecx
mov ecx, edi
call dword [edx + 0x64]
mov eax, dword [esi + 0x3c8]
test eax, eax
je 0x4f780e
lea ecx, [esp + 0x78]
push ecx
mov ecx, edi
call fcn.005e2e04
mov edx, dword [esi + 0x230]
mov eax, dword [esi + 0x3a0]
push edx
lea ecx, [esp + 0x74]
push eax
push ecx
mov ecx, edi
call fcn.005e2dfe
mov edx, dword [esi + 0x238]
mov eax, dword [esi + 0x3a0]
push edx
push eax
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esi + 0x4cc]
mov dword [esp + 0x10], 0
test eax, eax
jle 0x4f755c
lea ebx, [esi + 0x3a4]
mov eax, dword [ebx]
mov ecx, dword [esi + 0x230]
cmp eax, ecx
jl 0x4f7546
cmp eax, dword [esi + 0x238]
jg 0x4f7546
mov ecx, dword [esi + 0x3a0]
push eax
sub ecx, 3
lea edx, [esp + 0x74]
push ecx
push edx
mov ecx, edi
call fcn.005e2dfe
mov ecx, dword [esi + 0x3a0]
mov eax, dword [ebx]
add ecx, 4
push eax
push ecx
mov ecx, edi
call fcn.005e2df8
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x4cc]
inc eax
add ebx, 4
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x4f7507
mov eax, dword [0x6314e8]
mov ebx, dword [0x6314e4]
mov edx, dword [edi]
or eax, ebx
push eax
mov ecx, edi
call dword [edx + 0x38]
mov ecx, dword [esi + 0x3c4]
mov edx, dword [esi + 0x1c8]
mov eax, dword [esi + 0x268]
fld qword [edx + ecx*8]
test eax, eax
fstp qword [esp + 0x24]
je 0x4f7609
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
push eax
push ecx
lea edx, [esp + 0x3c]
push 0x6358e4
push edx
call fcn.005e2b16
add esp, 0x10
lea ecx, [esp + 0x34]
call fcn.005e2b52
mov eax, dword [esi + 0x3c4]
lea ecx, [esp + 0x3c]
inc eax
push eax
push 0x6358d4
push ecx
call fcn.005e2b16
add esp, 0xc
lea edx, [esp + 0x34]
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x18]
push edx
push eax
push ecx
call fcn.005e2a2c
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x1b4], 0x28
call fcn.005e2a44
lea ecx, [esp + 0x18]
mov byte [esp + 0x1b0], 0x16
call fcn.005e2954
jmp 0x4f76bc
fld qword [esp + 0x24]
call fcn.005e35c0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], 0
fild qword [esp + 0x2c]
mov ebx, dword [esi + 0x210]
add ebx, eax
fsubr qword [esp + 0x24]
fmul qword [0x6037d8]
call fcn.005e35c0
xor ecx, ecx
mov cx, word [esi + 0x214]
sub ecx, eax
cmp ecx, 0x3e8
jbe 0x4f765a
add ecx, 0xfffffc18
inc ebx
mov word [esp + 0x5c], cx
jmp 0x4f765f
mov word [esp + 0x5c], cx
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.005e2e6a
mov ebx, dword [eax]
push 0
lea ecx, [esp + 0x24]
call fcn.005e2e6a
mov edx, dword [eax + 4]
push 0
lea ecx, [esp + 0x24]
mov dword [esp + 0x1c], edx
call fcn.005e2e6a
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 8]
and ecx, 0xffff
push ecx
push ebx
push edx
push eax
mov eax, dword [esi + 0x3c4]
lea ecx, [esp + 0x1c]
inc eax
push eax
push 0x635898
push ecx
call fcn.005e2b16
add esp, 0x1c
mov eax, dword [esi + 0x230]
mov ebx, dword [esi + 0x23c]
mov edx, dword [esp + 0xc]
mov ecx, dword [esi + 0x22c]
sub eax, ebx
mov ebx, dword [edx - 8]
mov dword [esp + 0x18], ebx
push dword [esp + 0x18]
mov ebx, dword [edi]
push edx
push eax
push ecx
mov ecx, edi
call dword [ebx + 0x64]
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov eax, dword [esi + 0x22c]
mov ecx, dword [esp + 0x40]
add eax, ecx
xor ebx, ebx
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0x4cc]
test eax, eax
jle 0x4f780e
cmp ebx, 7
ja case.default.0x4f7726
jmp dword [ebx*4 + 0x4f7f6c]
mov edx, dword [edi]
mov eax, dword [esi + 0x434]
jmp 0x4f777b
mov edx, dword [edi]
mov eax, dword [esi + 0x438]
jmp 0x4f777b
mov edx, dword [edi]
mov eax, dword [esi + 0x43c]
jmp 0x4f777b
mov edx, dword [edi]
mov eax, dword [esi + 0x440]
jmp 0x4f777b
mov edx, dword [edi]
mov eax, dword [esi + 0x444]
jmp 0x4f777b
mov edx, dword [edi]
mov eax, dword [esi + 0x448]
jmp 0x4f777b
mov edx, dword [edi]
mov eax, dword [esi + 0x44c]
jmp 0x4f777b
mov edx, dword [edi]
mov eax, dword [esi + 0x450]
push eax
mov ecx, edi
call dword [edx + 0x38]
mov eax, dword [esi + ebx*8 + 0x3dc]
lea ecx, [ebx + ebx*4]
mov edx, dword [esi + ecx*8 + 0x98]
mov ecx, dword [esi + ebx*8 + 0x3d8]
push edx
push eax
push ecx
lea edx, [esp + 0x18]
push 0x635884
push edx
call fcn.005e2b16
mov eax, dword [esi + 0x230]
mov edx, dword [esi + 0x23c]
mov ecx, dword [esp + 0x20]
sub eax, edx
add esp, 0x14
mov edx, dword [ecx - 8]
mov dword [esp + 0x18], edx
push dword [esp + 0x18]
mov edx, dword [edi]
push ecx
push eax
mov eax, dword [esp + 0x1c]
mov ecx, edi
push eax
call dword [edx + 0x64]
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x40]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call dword [0x600030]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0x4cc]
add edx, ecx
inc ebx
mov dword [esp + 0x10], edx
cmp ebx, eax
jl 0x4f7721
push 0x63afd8
lea ecx, [esp + 0x10]
call fcn.005e2a44
mov edx, dword [esp + 0xc]
push 0x639818
push edx
call dword [0x600a74]
add esp, 8
test eax, eax
je 0x4f797c
mov ecx, dword [ebp + 8]
mov eax, dword [0x6314e8]
mov ebx, dword [0x6314e4]
mov edx, dword [ecx + 0xc]
or eax, ebx
test edx, edx
je 0x4f7857
cmp eax, 0xffffff
jne 0x4f7857
xor eax, eax
mov edx, dword [edi]
push eax
mov ecx, edi
call dword [edx + 0x38]
mov eax, dword [edi]
lea ecx, [esp + 0x80]
push ecx
mov ecx, edi
call dword [eax + 0x30]
mov eax, dword [esp + 0xc]
mov ebx, dword [0x600030]
lea edx, [esp + 0x2c]
mov ecx, dword [eax - 8]
push edx
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call ebx
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x70]
push edx
mov ecx, dword [eax - 8]
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call ebx
fild dword [esi + 0x244]
fmul qword [0x608b88]
call fcn.005e35c0
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esi + 0x230]
mov dword [esp + 0x4c], eax
mov edx, dword [edx - 8]
mov eax, dword [esi + 0x234]
push edx
mov edx, dword [esp + 0x10]
sub eax, ebx
mov ebx, dword [edi]
push edx
push ecx
push eax
mov ecx, edi
call dword [ebx + 0x64]
lea eax, [esp + 0xa0]
mov ecx, edi
push eax
call fcn.005e2e04
mov ebx, dword [esp + 0x4c]
mov dword [esp + 0x14], 4
mov eax, dword [esi + 0x230]
mov ecx, ebx
add ecx, eax
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
fild dword [esi + 0x244]
fmul qword [0x6034e0]
faddp st(1)
call fcn.005e35c0
mov edx, dword [esi + 0x234]
mov ecx, dword [esp + 0x2c]
push eax
sub edx, ecx
lea eax, [esp + 0x74]
push edx
push eax
mov ecx, edi
call fcn.005e2dfe
mov edx, dword [esi + 0x230]
mov ecx, ebx
add ecx, edx
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
fild dword [esi + 0x244]
fmul qword [0x6034e0]
faddp st(1)
call fcn.005e35c0
mov edx, dword [esi + 0x234]
push eax
push edx
mov ecx, edi
call fcn.005e2df8
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x14]
add ebx, ecx
dec eax
mov dword [esp + 0x14], eax
jne 0x4f78f4
mov eax, dword [0x631504]
test eax, eax
je 0x4f7a62
mov ecx, dword [ebp + 8]
mov eax, dword [0x6314e8]
mov ebx, dword [0x6314e4]
mov edx, dword [ecx + 0xc]
or eax, ebx
test edx, edx
je 0x4f79a9
cmp eax, 0xffffff
jne 0x4f79a9
xor eax, eax
mov edx, dword [edi]
push eax
mov ecx, edi
call dword [edx + 0x38]
mov eax, dword [edi]
lea ecx, [esp + 0x80]
push ecx
mov ecx, edi
call dword [eax + 0x30]
push 0x635878
lea ecx, [esp + 0x10]
call fcn.005e2a4a
mov eax, dword [esp + 0xc]
mov ebx, dword [0x600030]
lea edx, [esp + 0x2c]
mov ecx, dword [eax - 8]
push edx
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call ebx
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
lea edx, [esp + 0x40]
mov ecx, dword [eax - 8]
push edx
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call ebx
mov eax, dword [esi + 0x238]
mov edx, dword [esi + 0x230]
add eax, edx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x1c]
cdq
sub eax, edx
mov edx, dword [esi + 0x234]
sar ecx, 1
sar eax, 1
sub ecx, eax
mov eax, dword [esi + 0x22c]
add eax, edx
cdq
sub eax, edx
mov ebx, eax
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar ebx, 1
sar eax, 1
sub ebx, eax
mov eax, dword [edx - 8]
mov edx, dword [edi]
push eax
mov eax, dword [esp + 0x10]
push eax
push ecx
push ebx
mov ecx, edi
call dword [edx + 0x64]
mov eax, dword [esi + 0x4e8]
test eax, eax
jne 0x4f7a89
mov eax, dword [esi + 0x4d0]
test eax, eax
jne 0x4f7a89
fld qword [0x63eda0]
fcomp qword [0x6018b0]
fnstsw ax
test ah, 0x41
je 0x4f7a97
mov eax, dword [esi + 0x4cc]
test eax, eax
jne 0x4f7b44
push 0x635864
lea ecx, [esp + 0x10]
call fcn.005e2a4a
mov eax, dword [esp + 0xc]
mov ebx, dword [0x600030]
lea edx, [esp + 0x2c]
mov ecx, dword [eax - 8]
push edx
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call ebx
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
lea edx, [esp + 0x40]
mov ecx, dword [eax - 8]
push edx
push ecx
push eax
mov eax, dword [edi + 4]
push eax
call ebx
mov eax, dword [esi + 0x238]
mov ecx, dword [esi + 0x230]
add eax, ecx
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esi + 0x23c]
sar ecx, 1
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x1c]
add ecx, edx
cdq
sub eax, edx
mov edx, dword [esi + 0x234]
sar eax, 1
sub ecx, eax
mov eax, dword [esi + 0x22c]
add eax, edx
cdq
sub eax, edx
mov ebx, eax
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
mov edx, dword [edi]
sar ebx, 1
sar eax, 1
sub ebx, eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax - 8]
push eax
mov eax, dword [esp + 0x10]
push eax
push ecx
push ebx
mov ecx, edi
call dword [edx + 0x64]
mov eax, dword [esp + 0x54]
mov edx, dword [edi]
push eax
mov ecx, edi
call dword [edx + 0x30]
mov ecx, dword [esp + 0xf8]
push ecx
mov ecx, edi
call fcn.005e2e04
lea ecx, [esp + 0x80]
call fcn.005e2d14
lea ecx, [esp + 0xa0]
call fcn.005e2d14
lea ecx, [esp + 0x90]
call fcn.005e2d14
lea ecx, [esp + 0xac]
call fcn.005e2d14
lea ecx, [esp + 0xdc]
call fcn.005e2d14
lea ecx, [esp + 0xe4]
call fcn.005e2d14
lea ecx, [esp + 0x78]
call fcn.005e2d14
lea ecx, [esp + 0xcc]
call fcn.005e2d14
lea ecx, [esp + 0xd4]
call fcn.005e2d14
lea ecx, [esp + 0xc4]
call fcn.005e2d14
lea ecx, [esp + 0x88]
call fcn.005e2d14
mov eax, dword [esi + 0x424]
test eax, eax
jne 0x4f7ccd
test edi, edi
jne 0x4f7bf6
xor eax, eax
jmp 0x4f7bf9
mov eax, dword [edi + 4]
mov edx, dword [esp + 0xc0]
mov ecx, dword [ebp + 8]
push 0xcc0020
push 0
push 0
push eax
mov eax, dword [esp + 0xcc]
push edx
mov edx, dword [ecx + 4]
push eax
push 0
push 0
push edx
call dword [0x6000a0]
mov eax, dword [esi + 0x418]
test eax, eax
je 0x4f7c5e
mov eax, dword [esi + 0x420]
lea ebx, [esi + 0x420]
lea ecx, [esp + 0x68]
push ecx
push eax
call fcn.00545280
add esp, 8
mov ecx, ebx
mov dword [esi + 0x418], 0
push 0x63a630
call fcn.005e2b5e
mov eax, dword [esi + 0x41c]
test eax, eax
je 0x4f7ca7
mov edx, dword [esi + 0x20]
mov dword [esi + 0x41c], 0
push edx
call dword [0x600b34]
test eax, eax
je 0x4f7ca7
call dword [0x600b30]
test eax, eax
je 0x4f7ca7
mov edx, dword [esp + 0x6c]
lea eax, [esp + 0x68]
neg eax
sbb eax, eax
and eax, edx
push eax
push 2
call dword [0x600b2c]
call dword [0x600b28]
mov eax, dword [esp + 0x110]
test eax, eax
jne 0x4f7cbe
push eax
mov eax, dword [edi + 4]
push eax
call fcn.005e2e1c
jmp 0x4f7d1a
mov eax, dword [eax + 4]
push eax
mov eax, dword [edi + 4]
push eax
call fcn.005e2e1c
jmp 0x4f7d1a
mov ecx, dword [esp + 0x108]
mov edx, dword [esp + 0xfc]
mov eax, dword [esp + 0x10c]
mov dword [0x6314e4], ecx
mov ecx, dword [esp + 0x100]
mov dword [0x6314e8], edx
mov edx, dword [esp + 0x104]
mov dword [0x640790], eax
mov eax, dword [esp + 0xa8]
mov dword [0x6314ec], ecx
mov dword [0x6314e0], edx
mov dword [esi + 0x338], eax
lea ecx, [esp + 0x68]
call fcn.005e2d14
lea ecx, [esp + 0x98]
call fcn.005e2d14
lea ecx, [esp + 0x114]
call fcn.005e2dec
mov edi, 0x602928
mov dword [esi + 0x424], 0
mov dword [esp + 0x98], edi
lea ecx, [esp + 0x98]
mov byte [esp + 0x1b0], 0x29
call fcn.005e2d14
mov esi, 0x602914
mov dword [esp + 0xa0], edi
mov dword [esp + 0x98], esi
lea ecx, [esp + 0xa0]
mov byte [esp + 0x1b0], 0x2a
call fcn.005e2d14
mov dword [esp + 0xa0], esi
mov dword [esp + 0xd4], edi
lea ecx, [esp + 0xd4]
mov byte [esp + 0x1b0], 0x2b
call fcn.005e2d14
mov dword [esp + 0xd4], esi
mov dword [esp + 0xcc], edi
lea ecx, [esp + 0xcc]
mov byte [esp + 0x1b0], 0x2c
call fcn.005e2d14
mov dword [esp + 0xcc], esi
mov dword [esp + 0x78], edi
lea ecx, [esp + 0x78]
mov byte [esp + 0x1b0], 0x2d
call fcn.005e2d14
mov dword [esp + 0x78], esi
mov dword [esp + 0xe4], edi
lea ecx, [esp + 0xe4]
mov byte [esp + 0x1b0], 0x2e
call fcn.005e2d14
mov dword [esp + 0xe4], esi
mov dword [esp + 0xdc], edi
lea ecx, [esp + 0xdc]
mov byte [esp + 0x1b0], 0x2f
call fcn.005e2d14
mov dword [esp + 0xdc], esi
mov dword [esp + 0xac], edi
lea ecx, [esp + 0xac]
mov byte [esp + 0x1b0], 0x30
call fcn.005e2d14
mov dword [esp + 0xac], esi
mov dword [esp + 0x90], edi
lea ecx, [esp + 0x90]
mov byte [esp + 0x1b0], 0x31
call fcn.005e2d14
mov dword [esp + 0x90], esi
mov dword [esp + 0x80], edi
lea ecx, [esp + 0x80]
mov byte [esp + 0x1b0], 0x32
call fcn.005e2d14
mov dword [esp + 0x80], esi
mov dword [esp + 0xc4], edi
lea ecx, [esp + 0xc4]
mov byte [esp + 0x1b0], 0x33
call fcn.005e2d14
mov dword [esp + 0xc4], esi
mov dword [esp + 0x88], edi
lea ecx, [esp + 0x88]
mov byte [esp + 0x1b0], 0x34
call fcn.005e2d14
mov dword [esp + 0x88], esi
lea ecx, [esp + 0x64]
mov byte [esp + 0x1b0], 4
call fcn.005e2954
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1b0], 3
call fcn.005e2954
lea ecx, [esp + 0x34]
mov byte [esp + 0x1b0], 2
call fcn.005e2954
lea ecx, [esp + 0xc]
mov byte [esp + 0x1b0], 1
call fcn.005e2954
mov dword [esp + 0x68], edi
lea ecx, [esp + 0x68]
mov byte [esp + 0x1b0], 0x35
call fcn.005e2d14
lea ecx, [esp + 0x114]
mov dword [esp + 0x68], esi
mov dword [esp + 0x1b0], 0xffffffff
call fcn.005e2de6
mov ecx, dword [esp + 0x1a8]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4