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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push esi
push edi
push ebx
sub esp, 0x82c
xor eax, eax
mov ecx, dword [ebp + 8]
mov esi, dword [ecx + 0x4c]
mov ebx, dword [ecx + 0x48]
mov dword [esp + 0x6e4], eax
mov dword [esp + 0x6e8], eax
mov dword [esp + 0x6ec], eax
mov dword [esp + 0x6f0], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 0x14]
mov edx, 0x1000
mov dword [esp + 0x704], eax
mov edi, 0x1e01
xor eax, eax
test esi, esi
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x708], edi
mov dword [esp + 0x70c], edi
mov dword [esp + 0x73c], eax
jle 0x431967
mov eax, dword [ebp + 0xc]
xor edi, edi
mov dword [esp + 8], eax
xor edx, edx
mov dword [esp + 0x744], ebx
mov dword [esp + 0x748], esi
mov dword [esp + 0x740], ecx
mov dword [esp + edi*4 + 0x38], 0
cmp dword [esp + 0x744], 0
jle 0x43194e
mov eax, dword [esp + 0x740]
lea ebx, [esp + edi*8 + 0x6e4]
mov dword [esp + 0x4c], ebx
lea ebx, [edi + edi*8]
mov dword [esp + 0x10], 0
lea esi, [esp + edi*8 + 0x28]
mov ecx, dword [eax + 0x30]
mov eax, dword [esp + 0x704]
mov dword [esp + 0x50], esi
lea esi, [esp + ebx*8 + 0x59c]
mov dword [esp + 0x54], esi
lea esi, [esp + ebx*8 + 0x598]
mov dword [esp + 0x44], esi
lea esi, [esp + ebx*8 + 0x5a0]
mov dword [esp + 0x40], esi
lea esi, [esp + ebx*8 + 0x590]
mov dword [esp + 0x18], esi
lea esi, [esp + ebx*8 + 0x594]
shl ebx, 9
mov dword [esp + 0x48], ecx
lea ecx, [eax + edi*8]
add ebx, dword [esp + 8]
mov eax, dword [esp + edi*4 + 0x38]
mov dword [esp + 0xc], edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], ecx
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov esi, dword [edx + edi*4]
lea edx, [edi*4]
add dword [esp + 0x73c], esi
add eax, esi
mov dword [ecx + edi*4], esi
lea esi, [edx + edx*8]
mov dword [ebx + edi*4], 0
cmp dword [esp + 0x48], 0
jl 0x430065
mov edx, dword [esp + 0x14]
mov dword [edx + esi], 0x42ef30
jmp 0x430070
mov edx, dword [esp + 0x14]
mov dword [edx + esi], 0x42eee0
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x740]
imul ecx, edi, 0x1484
mov dword [edx + esi], ebx
mov edx, dword [esp + 0x20]
lea ebx, [ebx + edx + 0x130]
mov edx, dword [esp + 0x40]
add ecx, ebx
mov ebx, dword [esp + 0x44]
mov dword [edx + esi], ecx
lea ecx, [edi + edi*8]
shl ecx, 8
add ecx, dword [esp + 0x1c]
mov dword [ebx + esi], ecx
mov edx, dword [edx + esi]
cmp dword [edx + 0x12b4], 2
je 0x4300c2
mov edx, dword [esp + 0x18]
mov dword [edx + esi], 0x42fa70
jmp 0x4300cd
mov edx, dword [esp + 0x18]
mov dword [edx + esi], 0x42f430
inc edi
cmp edi, dword [esp + 0x744]
jl 0x430025
mov edi, dword [esp + 0xc]
mov dword [esp + edi*4 + 0x38], eax
inc edi
mov edx, dword [esp + 0x20]
add edx, 0x2908
cmp edi, dword [esp + 0x748]
jl 0x42ff83
mov ebx, dword [esp + 0x744]
mov esi, dword [esp + 0x748]
mov ecx, dword [esp + 0x740]
fld dword [0x46d50c]
xor edx, edx
fldz
xor eax, eax
test ebx, ebx
jle 0x431975
mov dword [esp + 0x744], ebx
mov dword [esp + 0x748], esi
mov dword [esp + 0x740], ecx
fstp dword [esp + 0x24]
fstp st(0)
mov ebx, dword [esp + 0x704]
lea ecx, [edx + edx*8]
xor edi, edi
lea esi, [esp + ecx*8 + 0x590]
mov dword [esp + 0x20], esi
lea esi, [esp + eax + 0x318]
mov dword [esp + 0x18], esi
lea ebx, [ebx + edx*8]
mov esi, dword [ebp + 0x10]
lea ecx, [esp + eax + 0xa8]
mov dword [esp + 0x44], edi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x4c], ebx
add esi, eax
mov dword [esp + 0x14], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov esi, edi
mov eax, dword [esp + 0x4c]
cmp dword [eax + edi*4], 0
jle 0x43048c
fld dword [esp + 0x24]
lea eax, [edi*4]
mov ecx, dword [esp + 0x1c]
lea edx, [eax + eax*8]
mov ebx, dword [esp + 0x18]
add edx, dword [esp + 0x20]
mov dword [esp + 0x50], edx
lea eax, [ecx + esi]
mov dword [esp + 0x48], 0xffffffff
lea ecx, [ebx + esi]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x44], esi
lea ecx, [ebx + esi]
mov ebx, dword [edx + 0x10]
mov dword [esp + 0x40], ecx
mov ecx, dword [edx + 8]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x68], ebx
mov ecx, dword [ebx + 0x1458]
mov ebx, dword [ebx + 0x1300]
mov dword [esp + 0x58], ebx
xor ebx, ebx
mov dword [edx + 0x14], ebx
mov dword [edx + 0x18], ebx
mov dword [edx + 0x1c], ebx
mov dword [edx + 0x20], ebx
mov dword [esp + 0x5c], ecx
mov esi, ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x68]
fld st(0)
mov ecx, dword [esp + 0x5c]
mov eax, dword [edi + esi*4 + 0x1308]
mov edi, dword [esp + 0x64]
sub ecx, edi
inc ecx
cmp eax, ecx
mov dword [esp + 0x74], eax
jae 0x43023b
mov ecx, eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x70], ecx
lea edx, [eax + edi*4]
mov eax, ecx
shr eax, 2
and ecx, 3
mov dword [esp + 0x6c], edx
test eax, eax
lea edi, [eax - 1]
jbe 0x4302ac
lea esi, [esi]
fld dword [edx + 0xc]
dec edi
fld dword [edx + 8]
fld dword [edx + 4]
fld dword [edx]
add edx, 0x10
fcom st(4)
fnstsw ax
sahf
fxch st(4)
ja 0x43027a
fst st(4)
fstp st(0)
fcom st(3)
fnstsw ax
sahf
fxch st(3)
ja 0x430287
fst st(3)
fstp st(0)
fcom st(2)
fnstsw ax
sahf
fxch st(2)
ja 0x430294
fst st(2)
fstp st(0)
fld st(1)
fxch st(2)
fcomp st(1)
fnstsw ax
sahf
mov eax, edi
jae 0x4302a7
jp 0x4302a7
fst st(1)
fstp st(0)
inc eax
jne 0x430260
cmp ecx, 3
je 0x4302bd
cmp ecx, 2
je 0x4302cb
cmp ecx, 1
je 0x4302d9
jmp 0x4302e6
fld dword [edx + 8]
fcom st(1)
fnstsw ax
sahf
jbe 0x4302c9
fst st(1)
fstp st(0)
fld dword [edx + 4]
fcom st(1)
fnstsw ax
sahf
jbe 0x4302d7
fst st(1)
fstp st(0)
fld dword [edx]
fcom st(1)
fnstsw ax
sahf
jbe 0x4302e4
fst st(1)
fstp st(0)
fld dword [0x46d50c]
mov eax, 0x80
mov dword [esp + 0x80], esi
mov edi, 0xff
mov edx, 0x40
xor ecx, ecx
mov esi, eax
fld st(1)
fmul dword [esi*4 + 0x4b18c0]
fcomp st(1)
fnstsw ax
sahf
ja 0x430324
jp 0x430324
mov edi, esi
sub esi, edx
and esi, 0xff
jmp 0x43032c
add esi, edx
and esi, 0xff
inc ecx
movzx ecx, cl
shr edx, 1
cmp ecx, 8
jl 0x430306
fstp st(1)
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x50]
mov esi, dword [esp + 0x80]
mov dword [ecx + esi*4], edi
mov ecx, dword [eax + 0x14]
cmp edi, ecx
mov edx, dword [esp + 0x54]
jl 0x430358
mov ecx, edi
mov dword [eax + 0x14], ecx
mov ecx, dword [eax + edx*4 + 0x18]
cmp ecx, edi
jge 0x430365
mov ecx, edi
mov dword [eax + edx*4 + 0x18], ecx
inc edx
cmp edx, 2
jbe 0x430374
mov edx, 0
mov dword [esp + 0x54], edx
cmp esi, dword [esp + 0x58]
fstp st(0)
jge 0x4303e7
cmp dword [esp + 0x74], 2
jbe 0x4303e7
mov eax, dword [esp + 0x68]
movsx ecx, byte [esi + eax + 0x145c]
test ecx, ecx
jne 0x4303a0
mov ecx, 0xff
mov ebx, ecx
jmp 0x4303f7
mov ecx, dword [esp + 0x64]
push edi
push dword [esp + 0x74]
mov edi, dword [esp + 0x48]
lea eax, [eax + ecx*4]
push dword [edi + esi*4]
push dword [esp + 0x78]
push eax
mov eax, dword [esp + 0x64]
fstp dword [esp + 0x38]
call dword [eax + 4]
fld dword [esp + 0x38]
add esp, 0x14
movzx ecx, al
cmp ecx, ebx
jl 0x4303d3
mov ebx, ecx
cmp ecx, dword [esp + 0x48]
jle 0x4303f7
cmp ecx, 0xff
jge 0x4303f7
mov dword [esp + 0x48], ecx
jmp 0x4303f7
cmp edi, ebx
jge 0x4303ed
mov edi, ebx
mov ebx, edi
and ebx, 0xff
mov ecx, ebx
mov eax, dword [esp + 0x7c]
mov dword [eax + esi*4], ecx
inc esi
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x74]
mov dword [esp + 0x64], ecx
cmp ecx, dword [esp + 0x5c]
jbe 0x430219
mov edx, esi
fstp dword [esp + 0x24]
cmp edx, 0x27
mov ecx, dword [esp + 0x78]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x10]
jge 0x43043c
mov dword [eax + edx*4], ebx
mov dword [ecx + edx*4], 0
inc edx
cmp edx, 0x27
jl 0x43042c
cmp dword [esp + 0x48], 0
jl 0x430468
mov dword [esp + 0x10], edi
xor edx, edx
movzx ebx, byte [esp + 0x48]
mov edi, dword [esp + 0x48]
cmp dword [eax + edx*4], 0xff
jne 0x43045e
mov dword [eax + edx*4], edi
inc edx
cmp edx, 0x27
jl 0x430452
mov edi, dword [esp + 0x10]
push ebx
push ecx
push eax
mov eax, dword [esp + 0x5c]
push eax
call dword [eax]
mov eax, dword [esp + 0x60]
push dword [eax + 0x10]
push dword [eax + 0xc]
call fcn.0042ce90
add esp, 0x18
test eax, eax
jne 0x431938
inc edi
add esi, 0x9c
cmp edi, dword [esp + 0x744]
jl 0x43018a
mov edx, dword [esp + 0xc]
inc edx
mov eax, dword [esp + 8]
add eax, 0x138
cmp edx, dword [esp + 0x748]
jl 0x43013f
mov ebx, dword [esp + 0x744]
mov esi, dword [esp + 0x748]
mov ecx, dword [esp + 0x740]
xor eax, eax
lea edi, [ecx + 0x130]
xor edx, edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x744], ebx
mov dword [esp + 0x18], edi
mov dword [esp + 0x748], esi
mov dword [esp + 0x740], ecx
mov ebx, edx
mov dword [esp + edx*4 + 0x708], 0
xor ecx, ecx
cmp dword [esp + 0x744], 0
jle 0x43060f
mov edi, dword [esp + 0x704]
lea esi, [edx + edx*8]
xor ecx, ecx
mov dword [esp + 0xc], ecx
lea ecx, [esp + esi*8 + 0x590]
mov dword [esp + 0x14], ebx
lea edi, [edi + edx*8]
mov dword [esp + 0x1c], edi
lea esi, [esp + edx*8 + 0x28]
mov dword [esp + 0x24], esi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x20], edx
mov dword [esp + 8], eax
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 0x740]
mov eax, dword [esp + 0x1c]
lea edi, [esi*4]
lea edi, [edi + edi*8]
add edi, dword [esp + 0x10]
cmp dword [eax + esi*4], 0
jle 0x4305a5
push 0x900
mov eax, dword [edi + 0x10]
push 0
add eax, 0x900
push eax
call fcn.0040bff0
add esp, 0xc
mov eax, edi
call fcn.004319a0
push 0
push dword [edi + 0x10]
push dword [edi + 0xc]
call fcn.0042b300
add esp, 0xc
mov edx, dword [edi + 0x10]
mov dword [edx + 0x12a0], eax
imul edi, esi, 0x1484
mov eax, dword [esp + 0x14]
push dword [esp + 0x18]
push esi
push dword [esp + 0x28]
push ebx
lea edx, [ebx + eax + 0x130]
add edi, edx
call fcn.0042c770
add esp, 0x10
cmp dword [ebx + 0x24], 1
je 0x431929
mov eax, dword [edi + 0x12a0]
add eax, dword [edi + 0x12ec]
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov dword [edi + esi*4], eax
inc esi
add dword [esp + edx*4 + 0x708], eax
cmp esi, dword [esp + 0x744]
jl 0x430555
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 8]
mov ecx, dword [esp + edx*4 + 0x708]
inc edx
add eax, ecx
add ebx, 0x2908
cmp edx, dword [esp + 0x748]
jl 0x4304f9
mov ebx, dword [esp + 0x744]
mov esi, dword [esp + 0x748]
mov ecx, dword [esp + 0x740]
cmp eax, dword [esp + 0x73c]
jg 0x4306a8
test esi, esi
jle 0x430bc5
mov dword [esp + 8], eax
mov edi, 1
mov dword [esp + 0x740], ecx
xor edx, edx
cmp dword [esp + edx*4 + 0x708], 0x1e00
jle 0x43066f
mov edi, 0
test ebx, ebx
jle 0x430e22
xor ecx, ecx
lea eax, [esp + edx*8 + 0x28]
cmp dword [eax + ecx*4], 0xfff
jle 0x43068b
mov edi, 0
inc ecx
cmp ecx, ebx
jl 0x43067d
inc edx
cmp edx, esi
jl 0x43065d
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x740]
test edi, edi
jne 0x430bc5
xor eax, eax
test esi, esi
jle 0x430888
mov dword [esp + 0x1c], eax
xor edx, edx
mov dword [esp + 0x748], esi
fldz
mov dword [esp + 0x740], ecx
mov dword [esp + edx*4 + 0x38], 0
xor edi, edi
test ebx, ebx
jle 0x430862
mov edi, dword [esp + edx*4 + 0x38]
xor ecx, ecx
mov dword [esp + 0x18], edx
lea eax, [esp + edx*8 + 0x28]
lea esi, [esp + edx*8 + 0x6e4]
mov edx, dword [eax + ecx*4]
cmp edx, 0xfff
jl 0x4306ff
mov edx, 0xfff
mov dword [esi + ecx*4], edx
inc ecx
add edi, edx
cmp ecx, ebx
jl 0x4306ef
mov edx, dword [esp + 0x18]
cmp edi, 0x1e00
mov dword [esp + edx*4 + 0x38], edi
jle 0x430862
xor eax, eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], eax
fld st(0)
test ebx, ebx
jle 0x43197e
xor ecx, ecx
lea eax, [esp + edx*8 + 0x6e4]
mov esi, dword [eax + ecx*4]
test esi, esi
jle 0x43191e
mov dword [esp + 0x20], esi
fild dword [esp + 0x20]
fsqrt
fsqrt
fst dword [esp + ecx*4 + 0xc]
faddp st(1)
inc ecx
cmp ecx, ebx
jl 0x43073a
xor esi, esi
lea edi, [esp + edx*8 + 0x6e4]
fcom st(1)
fnstsw ax
sahf
ja 0x43077c
fstp st(0)
mov dword [edi + esi*4], 0
inc esi
cmp esi, ebx
jl 0x43076e
jmp 0x4307ab
mov dword [esp + 0x18], edx
fstp dword [esp + 0x14]
fstp dword [esp + 8]
fld dword [esp + esi*4 + 0xc]
fmul dword [0x46d508]
fdiv dword [esp + 0x14]
call fcn.0040c080
mov dword [edi + esi*4], eax
inc esi
cmp esi, ebx
jl 0x430788
fld dword [esp + 8]
mov edx, dword [esp + 0x18]
cmp ebx, 1
jle 0x43196e
mov ecx, dword [esp + edx*8 + 0x28]
mov eax, dword [esp + edx*8 + 0x6e4]
lea edi, [ecx + 0x20]
cmp eax, edi
jle 0x4307e4
mov esi, dword [esp + edx*8 + 0x6e8]
add esi, eax
mov eax, edi
sub esi, ecx
add esi, 0xffffffe0
mov dword [esp + edx*8 + 0x6e8], esi
mov dword [esp + edx*8 + 0x6e4], edi
mov esi, dword [esp + edx*8 + 0x2c]
mov ecx, dword [esp + edx*8 + 0x6e8]
lea edi, [esi + 0x20]
cmp ecx, edi
jle 0x43080b
add eax, ecx
sub eax, esi
add eax, 0xffffffe0
mov dword [esp + edx*8 + 0x6e4], eax
mov dword [esp + edx*8 + 0x6e8], edi
cmp eax, 0xfff
jl 0x430817
mov eax, 0xfff
mov dword [esp + edx*8 + 0x6e4], eax
mov eax, dword [esp + edx*8 + 0x6e8]
cmp eax, 0xfff
jl 0x430831
mov eax, 0xfff
mov dword [esp + edx*8 + 0x6e8], eax
test ebx, ebx
mov dword [esp + edx*4 + 0x38], 0
mov edi, 0
jle 0x430862
mov edi, dword [esp + edx*4 + 0x38]
xor ecx, ecx
lea eax, [esp + edx*8 + 0x6e4]
add edi, dword [eax + ecx*4]
inc ecx
cmp ecx, ebx
jl 0x430856
mov dword [esp + edx*4 + 0x38], edi
inc edx
add dword [esp + 0x1c], edi
cmp edx, dword [esp + 0x748]
jl 0x4306c8
fstp st(0)
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x748]
mov ecx, dword [esp + 0x740]
cmp eax, dword [esp + 0x73c]
jg 0x43165b
test esi, esi
mov edx, 1
mov eax, 0
jle 0x430911
mov dword [esp + 0x748], esi
xor edi, edi
mov dword [esp + 0x740], ecx
xor ecx, ecx
test ebx, ebx
jle 0x4308ea
xor esi, esi
mov dword [esp + 0xc], esi
lea esi, [esp + edi*8 + 0x6e4]
mov dword [esp + 8], eax
mov eax, esi
mov esi, dword [esp + 0xc]
cmp dword [eax + esi*4], 0xfff
jle 0x4308de
mov edx, 0
add ecx, dword [eax + esi*4]
inc esi
cmp esi, ebx
jl 0x4308d0
mov eax, dword [esp + 8]
cmp ecx, 0x1e00
jle 0x4308f7
mov edx, 0
inc edi
add eax, ecx
cmp edi, dword [esp + 0x748]
jl 0x4308b3
mov esi, dword [esp + 0x748]
mov ecx, dword [esp + 0x740]
cmp eax, dword [esp + 0x73c]
jg 0x43091e
test edx, edx
jne 0x430987
test esi, esi
jle 0x430987
xor edi, edi
lea eax, [ebx*4]
test ebx, ebx
jle 0x4309c3
mov dword [esp + 0x748], esi
mov dword [esp + 8], eax
mov dword [esp + 0x740], ecx
mov esi, dword [esp + 0x704]
cmp ebx, 0x18
jle 0x430e30
lea edx, [esp + edi*8 + 0x6e4]
push dword [esp + 8]
lea eax, [esi + edi*8]
push eax
push edx
call fcn.0040c050
add esp, 0xc
inc edi
cmp edi, dword [esp + 0x748]
jl 0x43094c
mov esi, dword [esp + 0x748]
mov ecx, dword [esp + 0x740]
jmp 0x43098f
test ebx, ebx
jle 0x431651
xor eax, eax
xor edi, edi
mov edx, eax
inc eax
shl edx, 4
cmp eax, ebx
mov dword [ecx + edx + 0x5350], edi
mov dword [ecx + edx + 0x5354], edi
mov dword [ecx + edx + 0x5358], edi
mov dword [ecx + edx + 0x535c], edi
jl 0x430993
test esi, esi
jle 0x43164a
test ebx, ebx
mov eax, 0
mov edx, ecx
jle 0x430a23
mov dword [esp + 0x744], ebx
xor ebx, ebx
mov dword [esp + 0x740], ecx
mov dword [esp + 0x748], esi
mov edi, ebx
mov esi, dword [esp + 0x744]
mov ecx, edx
inc edi
mov dword [ecx + 0x13e0], 0
add ecx, 0x1484
cmp edi, esi
jl 0x4309ee
inc eax
add edx, 0x2908
mov esi, dword [esp + 0x748]
cmp eax, esi
jl 0x4309dc
mov ebx, dword [esp + 0x744]
mov ecx, dword [esp + 0x740]
xor eax, eax
lea edx, [ecx + 0x130]
xor edi, edi
mov dword [esp + 0x734], edx
xor edx, edx
mov dword [esp + 0x6fc], edx
mov dword [esp + 0x740], ecx
mov dword [esp + 0x744], ebx
mov dword [esp + 0x748], esi
mov ecx, edx
mov dword [esp + edi*4 + 0x708], 0
xor ebx, ebx
cmp dword [esp + 0x744], 0
jle 0x430b95
xor ebx, ebx
lea esi, [edi + edi*8]
mov dword [esp + 0x710], ebx
lea ebx, [esp + esi*8 + 0x590]
mov esi, dword [esp + 0x704]
mov dword [esp + 0x730], ebx
mov dword [esp + 0x728], edx
mov dword [esp + 0x6fc], ecx
lea ebx, [esi + edi*8]
mov dword [esp + 0x72c], ebx
lea esi, [esp + edi*8 + 0x6e4]
mov dword [esp + 0x71c], esi
lea ebx, [esp + ecx + 0x318]
mov dword [esp + 0x714], ebx
lea esi, [esp + ecx + 0xa8]
mov dword [esp + 0x718], esi
mov dword [esp + 0x738], edi
mov dword [esp + 0x700], eax
mov ebx, dword [esp + 0x710]
mov eax, dword [esp + 0x72c]
lea esi, [ebx*4]
lea esi, [esi + esi*8]
add esi, dword [esp + 0x730]
cmp dword [eax + ebx*4], 0
jg 0x430bd2
imul esi, ebx, 0x1484
mov eax, dword [esp + 0x728]
mov ecx, dword [esp + 0x740]
push dword [esp + 0x734]
push ebx
push dword [esp + 0x740]
push ecx
lea edx, [ecx + eax + 0x130]
add esi, edx
call fcn.0042c770
add esp, 0x10
mov eax, dword [esp + 0x740]
cmp dword [eax + 0x24], 1
je 0x430e70
mov edx, dword [esp + 0x738]
inc ebx
mov eax, dword [esi + 0x12a0]
add eax, dword [esi + 0x12ec]
add dword [esp + edx*4 + 0x708], eax
cmp ebx, dword [esp + 0x744]
jl 0x430ae7
mov edi, edx
mov edx, dword [esp + 0x728]
mov ecx, dword [esp + 0x6fc]
mov eax, dword [esp + 0x700]
mov ebx, dword [esp + edi*4 + 0x708]
inc edi
add eax, ebx
add edx, 0x2908
add ecx, 0x138
cmp edi, dword [esp + 0x748]
jl 0x430a54
mov ecx, dword [esp + 0x740]
cmp eax, dword [esp + 0x73c]
jg 0x430e53
add esp, 0x82c
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
imul edx, ebx, 0x9c
xor edi, edi
mov eax, dword [esp + 0x718]
mov ecx, dword [esi + 0x10]
mov dword [esp + 0x750], ecx
mov dword [esp + 0x710], ebx
add eax, edx
add edx, dword [esp + 0x714]
mov dword [esp + 0x7f0], edx
mov edx, dword [ecx + 0x12ac]
mov ecx, 0x27
mov ebx, dword [eax + edi*4]
cmp ebx, edx
jl 0x430c16
mov ebx, edx
mov dword [eax + edi*4], ebx
inc edi
dec ecx
jne 0x430c0d
mov edx, dword [esp + 0x71c]
mov ebx, dword [esp + 0x710]
mov ecx, dword [edx + ebx*4]
xor edx, edx
mov dword [esp + 0x7f4], ecx
mov ecx, 0x27
xor edi, edi
mov ebx, dword [eax + edi*4]
inc edi
neg ebx
add ebx, 0xff
cmp ebx, edx
jl 0x430c50
mov edx, ebx
dec ecx
jne 0x430c3e
mov ecx, dword [esp + 0x750]
mov dword [esp + 0x814], eax
mov edi, dword [ecx + 0x12ac]
mov ecx, 0xffffffff
mov dword [esp + 0x800], edi
mov edi, edx
shr edi, 0x1f
add edi, edx
sar edi, 1
mov dword [esp + 0x7fc], edx
mov dword [esp + 0x7f8], 0
mov dword [esp + 0x804], ecx
mov dword [esp + 0x81c], edi
mov dword [esp + 0x818], edx
mov eax, dword [esp + 0x750]
jmp 0x430cc9
mov edx, dword [esp + 0x7fc]
lea ebx, [eax + edx]
mov eax, dword [esi + 0x10]
mov ecx, ebx
shr ecx, 0x1f
add ebx, ecx
sar ebx, 1
mov dword [esp + 0x81c], ebx
xor ebx, ebx
mov edx, 0x27
xor ecx, ecx
cmp dword [esp + 0x818], 0
jle 0x431615
mov edi, dword [esp + 0x81c]
imul edi, dword [esp + 0x800]
mov dword [esp + 0x824], edx
mov dword [esp + 0x820], edi
mov dword [esp + 0x750], eax
mov dword [esp + 0x74c], esi
nop
lea esi, [esi]
mov edi, dword [esp + 0x814]
mov eax, dword [esp + 0x81c]
mov esi, dword [edi + ecx*4]
imul eax, esi
neg eax
add eax, dword [esp + 0x820]
cdq
mov edi, dword [esp + 0x818]
idiv edi
add esi, eax
cmp esi, 0xff
jl 0x430d46
mov esi, 0xff
test esi, esi
jge 0x430d4f
mov esi, 0
cmp esi, ebx
mov dword [esp + ecx*4 + 0x754], esi
jl 0x430d5c
mov ebx, esi
inc ecx
dec dword [esp + 0x824]
jne 0x430d10
mov eax, dword [esp + 0x750]
mov esi, dword [esp + 0x74c]
push ebx
push dword [esp + 0x7f4]
mov edi, dword [eax + 0x129c]
lea eax, [esp + 0x75c]
push eax
push esi
call dword [esi]
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042ce90
add esp, 0x18
test eax, eax
jne 0x4315c9
mov eax, esi
call fcn.004319a0
push 0
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042b300
add esp, 0xc
mov edx, dword [esi + 0x10]
mov dword [edx + 0x12a0], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x12ec]
add ecx, dword [eax + 0x12a0]
mov dword [eax + 0x129c], edi
cmp ecx, dword [esp + 0x7f4]
jg 0x430dfb
mov eax, dword [esp + 0x81c]
mov dword [esp + 0x804], eax
lea edx, [eax - 1]
mov dword [esp + 0x7fc], edx
jmp 0x430e0c
mov eax, dword [esp + 0x81c]
lea edx, [eax + 1]
mov dword [esp + 0x7f8], edx
mov eax, dword [esp + 0x7f8]
cmp eax, dword [esp + 0x7fc]
jle 0x430cac
jmp 0x430e85
inc edx
cmp edx, esi
jl 0x43065d
jmp 0x430695
xor eax, eax
lea edx, [esp + edi*8 + 0x6e4]
lea ecx, [esi + edi*8]
mov esi, dword [ecx + eax*4]
mov dword [edx + eax*4], esi
inc eax
cmp eax, ebx
jb 0x430e3c
mov esi, dword [esp + 0x704]
jmp 0x43096d
push eax
push dword [esp + 0x740]
push 0x46d5c0
push ecx
call fcn.00418fd0
push 0xffffffffffffffff
call fcn.0044dfea
add esp, 0x14
push esi
push dword [esp + 0x744]
call fcn.0042b590
add esp, 8
jmp 0x430b4f
mov ecx, dword [esp + 0x804]
test ecx, ecx
mov edi, dword [esp + 0x81c]
mov edx, dword [esp + 0x818]
mov eax, dword [esp + 0x814]
mov ebx, dword [esp + 0x710]
jl 0x43101c
cmp edi, ecx
je 0x430b09
xor edi, edi
test edx, edx
mov dword [esp + 0x808], edi
mov dword [esp + 0x6e0], 0x27
jle 0x430fde
mov dword [esp + 0x74c], esi
mov dword [esp + 0x710], ebx
mov dword [esp + 0x804], ecx
mov dword [esp + 0x818], edx
mov dword [esp + 0x814], eax
mov ebx, edi
mov esi, dword [esp + 0x6e0]
mov edi, dword [esp + 0x814]
mov eax, dword [esp + 0x800]
mov ecx, dword [edi + ebx*4]
sub eax, ecx
imul eax, dword [esp + 0x804]
cdq
mov edi, dword [esp + 0x818]
idiv edi
add ecx, eax
cmp ecx, 0xff
mov edx, dword [esp + 0x808]
jl 0x430f3b
mov ecx, 0xff
test ecx, ecx
jge 0x430f44
mov ecx, 0
cmp ecx, edx
mov dword [esp + ebx*4 + 0x754], ecx
jl 0x430f51
mov edx, ecx
inc ebx
mov dword [esp + 0x808], edx
dec esi
jne 0x430f00
mov esi, dword [esp + 0x74c]
mov ebx, dword [esp + 0x710]
mov eax, dword [esi + 0x10]
mov edx, dword [eax + 0x129c]
mov dword [esp + 0x6dc], edx
push dword [esp + 0x808]
push dword [esp + 0x7f4]
lea ecx, [esp + 0x75c]
push ecx
push esi
call dword [esi]
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042ce90
add esp, 0x18
test eax, eax
jne 0x4315c9
mov eax, esi
call fcn.004319a0
push 0
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042b300
add esp, 0xc
mov edx, dword [esi + 0x10]
mov dword [edx + 0x12a0], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esp + 0x6dc]
mov dword [ecx + 0x129c], eax
jmp 0x430b09
mov dword [esp + 0x710], ebx
mov ecx, edi
mov ebx, dword [esp + 0x6e0]
mov edi, dword [esp + 0x808]
mov edx, dword [eax + ecx*4]
cmp edx, edi
mov dword [esp + ecx*4 + 0x754], edx
jl 0x431005
mov edi, edx
inc ecx
dec ebx
jne 0x430ff5
mov dword [esp + 0x808], edi
mov ebx, dword [esp + 0x710]
jmp 0x430f6a
mov ecx, dword [esp + 0x800]
mov dword [esp + 0x6f8], 0xff
mov dword [esp + 0x818], edx
mov dword [esp + 0x814], eax
lea edi, [ecx + 0xff]
shr edi, 0x1f
mov dword [esp + 0x710], ebx
lea edi, [ecx + edi + 0xff]
mov ecx, 0xffffffff
sar edi, 1
mov dword [esp + 0x720], ecx
jmp 0x43107c
mov eax, dword [esp + 0x6f8]
mov edi, dword [esp + 0x800]
add edi, eax
mov edx, edi
shr edx, 0x1f
add edi, edx
sar edi, 1
xor ecx, ecx
mov eax, 0x27
xor ebx, ebx
cmp dword [esp + 0x818], 0
jle 0x4315e0
mov edx, edi
imul edx, dword [esp + 0x818]
mov dword [esp + 0x810], eax
mov dword [esp + 0x80c], edx
mov dword [esp + 0x6f4], edi
mov dword [esp + 0x74c], esi
lea esi, [esi]
mov esi, dword [esp + 0x814]
mov edi, dword [esp + 0x818]
mov eax, edi
mov esi, dword [esi + ebx*4]
imul eax, esi
neg eax
add eax, dword [esp + 0x80c]
cdq
idiv edi
add esi, eax
cmp esi, 0xff
jl 0x4310f1
mov esi, 0xff
test esi, esi
jge 0x4310fa
mov esi, 0
cmp esi, ecx
mov dword [esp + ebx*4 + 0x754], esi
jl 0x431107
mov ecx, esi
inc ebx
dec dword [esp + 0x810]
jne 0x4310c0
mov edi, dword [esp + 0x6f4]
mov esi, dword [esp + 0x74c]
push ecx
push dword [esp + 0x7f4]
mov ebx, dword [esi + 0x10]
lea eax, [esp + 0x75c]
push eax
push esi
mov ebx, dword [ebx + 0x129c]
call dword [esi]
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042ce90
add esp, 0x18
test eax, eax
jne 0x4315c9
mov eax, esi
call fcn.004319a0
push 0
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042b300
add esp, 0xc
mov edx, dword [esi + 0x10]
mov dword [edx + 0x12a0], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0x12ec]
add ecx, dword [eax + 0x12a0]
mov dword [eax + 0x129c], ebx
cmp ecx, dword [esp + 0x7f4]
jg 0x4311a2
mov dword [esp + 0x720], edi
lea eax, [edi - 1]
mov dword [esp + 0x6f8], eax
jmp 0x4311ac
lea eax, [edi + 1]
mov dword [esp + 0x800], eax
mov eax, dword [esp + 0x800]
cmp eax, dword [esp + 0x6f8]
jle 0x431063
mov ecx, dword [esp + 0x720]
test ecx, ecx
mov edx, dword [esp + 0x818]
mov eax, dword [esp + 0x814]
mov ebx, dword [esp + 0x710]
jl 0x431357
cmp edi, ecx
je 0x430b09
xor edi, edi
test edx, edx
mov dword [esp + 0x724], edi
mov dword [esp + 0x628], 0x27
jle 0x431319
mov dword [esp + 0x74c], esi
mov dword [esp + 0x720], ecx
mov dword [esp + 0x818], edx
mov dword [esp + 0x814], eax
mov dword [esp + 0x710], ebx
mov esi, edi
mov edi, dword [esp + 0x628]
lea esi, [esi]
lea edi, [edi]
mov eax, dword [esp + 0x814]
mov ebx, dword [esp + 0x818]
mov ecx, dword [eax + esi*4]
mov eax, dword [esp + 0x720]
sub eax, ecx
imul eax, ebx
cdq
idiv ebx
add ecx, eax
cmp ecx, 0xff
mov edx, dword [esp + 0x724]
jl 0x431276
mov ecx, 0xff
test ecx, ecx
jge 0x43127f
mov ecx, 0
cmp ecx, edx
mov dword [esp + esi*4 + 0x754], ecx
jl 0x43128c
mov edx, ecx
inc esi
mov dword [esp + 0x724], edx
dec edi
jne 0x431240
mov esi, dword [esp + 0x74c]
mov ebx, dword [esp + 0x710]
mov eax, dword [esi + 0x10]
mov edx, dword [eax + 0x129c]
mov dword [esp + 0x624], edx
push dword [esp + 0x724]
push dword [esp + 0x7f4]
lea ecx, [esp + 0x75c]
push ecx
push esi
call dword [esi]
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042ce90
add esp, 0x18
test eax, eax
jne 0x4315c9
mov eax, esi
call fcn.004319a0
push 0
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042b300
add esp, 0xc
mov edx, dword [esi + 0x10]
mov dword [edx + 0x12a0], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esp + 0x624]
mov dword [ecx + 0x129c], eax
jmp 0x430b09
mov dword [esp + 0x710], ebx
mov ecx, edi
mov ebx, dword [esp + 0x628]
mov edi, dword [esp + 0x724]
mov edx, dword [eax + ecx*4]
cmp edx, edi
mov dword [esp + ecx*4 + 0x754], edx
jl 0x431340
mov edi, edx
inc ecx
dec ebx
jne 0x431330
mov dword [esp + 0x724], edi
mov ebx, dword [esp + 0x710]
jmp 0x4312a5
mov edx, dword [esi + 0x10]
mov eax, 0x400
mov dword [esp + 0x588], edx
mov ecx, dword [edx + 0x12ac]
mov edi, ecx
mov dword [esp + 0x62c], ecx
cmp ecx, 0x200
jg 0x431508
mov edi, 0x200
mov dword [esp + 0x58c], edx
mov dword [esp + 0x710], ebx
mov dword [esp + 0x620], eax
mov dword [esp + 0x634], edi
mov dword [esp + 0x630], ecx
mov edx, dword [esp + 0x588]
mov ebx, dword [esp + 0x7f0]
mov eax, dword [esp + 0x62c]
xor ecx, ecx
mov edi, dword [esp + 0x634]
mov edx, dword [edx + 0x129c]
mov dword [esp + 0x63c], edx
xor edx, edx
mov dword [esp + 0x74c], esi
add edi, eax
sar edi, 1
mov eax, edi
sub eax, dword [esp + 0x630]
mov dword [esp + 0x638], edi
mov edi, dword [esp + edx*4 + 0x754]
add edi, eax
mov esi, dword [ebx + edx*4]
cmp edi, esi
jge 0x431403
mov edi, esi
cmp edi, 0xff
jl 0x431410
mov edi, 0xff
cmp edi, ecx
mov dword [esp + edx*4 + 0x640], edi
jl 0x43141d
mov ecx, edi
inc edx
cmp edx, 0x27
jl 0x4313f1
mov edi, dword [esp + 0x638]
mov esi, dword [esp + 0x74c]
push ecx
push ebx
lea eax, [esp + 0x648]
push eax
push esi
call dword [esi]
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042ce90
add esp, 0x18
test eax, eax
jne 0x4315c9
mov eax, esi
call fcn.004319a0
push 0
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042b300
add esp, 0xc
mov edx, dword [esi + 0x10]
mov ecx, dword [esp + 0x63c]
mov dword [edx + 0x12a0], eax
mov edx, dword [esi + 0x10]
mov eax, dword [edx + 0x12a0]
test eax, eax
mov dword [edx + 0x129c], ecx
je 0x4314a6
mov edx, dword [esp + 0x58c]
mov ecx, dword [edx + 0x12ec]
add ecx, eax
cmp ecx, dword [esp + 0x7f4]
jge 0x4314b9
mov dword [esp + 0x620], edi
lea eax, [edi - 1]
mov dword [esp + 0x634], eax
jmp 0x4314db
mov edx, dword [esp + 0x620]
cmp edx, 0x400
lea eax, [edi + 1]
mov dword [esp + 0x62c], eax
jne 0x4314d4
mov edx, edi
mov dword [esp + 0x620], edx
mov eax, dword [esp + 0x634]
cmp eax, dword [esp + 0x62c]
jl 0x4314f3
mov edx, dword [esi + 0x10]
jmp 0x4313b7
mov eax, dword [esp + 0x620]
mov ecx, dword [esp + 0x630]
mov ebx, dword [esp + 0x710]
cmp eax, edi
je 0x430b09
mov edx, dword [esi + 0x10]
sub eax, ecx
mov dword [esp + 0x74c], esi
mov dword [esp + 0x710], ebx
mov ecx, dword [edx + 0x129c]
mov dword [esp + 8], ecx
xor ecx, ecx
mov edi, dword [esp + 0x7f0]
xor edx, edx
mov esi, dword [esp + edx*4 + 0x754]
add esi, eax
mov ebx, dword [edi + edx*4]
cmp esi, ebx
jge 0x43154a
mov esi, ebx
cmp esi, 0xff
jl 0x431557
mov esi, 0xff
cmp esi, ecx
mov dword [esp + edx*4 + 0xc], esi
jl 0x431561
mov ecx, esi
inc edx
cmp edx, 0x27
jl 0x431538
mov esi, dword [esp + 0x74c]
lea eax, [esp + 0xc]
mov ebx, dword [esp + 0x710]
push ecx
push dword [esp + 0x7f4]
push eax
push esi
call dword [esi]
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042ce90
add esp, 0x18
test eax, eax
jne 0x4315c9
mov eax, esi
call fcn.004319a0
push 0
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.0042b300
add esp, 0xc
mov edx, dword [esi + 0x10]
mov dword [edx + 0x12a0], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esp + 8]
mov dword [ecx + 0x129c], eax
jmp 0x430b09
push 0x46d568
push dword [esi + 0xc]
call fcn.00418fd0
push 0xffffffffffffffff
call fcn.0044dfea
add esp, 0xc
mov dword [esp + 0x74c], esi
mov esi, dword [esp + 0x814]
mov edx, dword [esi + ebx*4]
cmp edx, ecx
mov dword [esp + ebx*4 + 0x754], edx
jl 0x4315fe
mov ecx, edx
inc ebx
dec eax
jne 0x4315ee
mov dword [esp + 0x814], esi
mov esi, dword [esp + 0x74c]
jmp 0x43111f
mov dword [esp + 0x74c], esi
mov edi, dword [esp + 0x814]
mov esi, dword [edi + ecx*4]
cmp esi, ebx
mov dword [esp + ecx*4 + 0x754], esi
jl 0x431633
mov ebx, esi
inc ecx
dec edx
jne 0x431623
mov dword [esp + 0x814], edi
mov esi, dword [esp + 0x74c]
jmp 0x430d74
xor eax, eax
jmp 0x430bb8
test esi, esi
jg 0x4309c1
jmp 0x43164a
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], eax
fldz
test esi, esi
fld st(0)
fld st(0)
jle 0x431985
xor eax, eax
xor edi, edi
mov edx, dword [esp + eax*4 + 0x38]
test edx, edx
jle 0x43190c
mov dword [esp + 0x20], edx
fild dword [esp + 0x20]
fsqrt
fst dword [esp + eax*4 + 8]
faddp st(2)
inc eax
cmp eax, esi
jl 0x431677
fxch st(1)
fcom st(2)
fnstsw ax
sahf
ja 0x4316be
fstp st(0)
mov dword [esp + 0x38], 0
xor eax, eax
jmp 0x4316b7
mov dword [esp + eax*4 + 0x38], 0
inc eax
cmp eax, esi
jl 0x4316af
jmp 0x43170b
fstp st(1)
mov eax, dword [esp + 0x73c]
xor edi, edi
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
mov dword [esp + 0x740], ecx
fstp dword [esp + 0x18]
fstp dword [esp + 0x14]
fstp dword [esp + 0x10]
fld dword [esp + edi*4 + 8]
fmul dword [esp + 0x18]
fdiv dword [esp + 0x14]
call fcn.0040c080
mov dword [esp + edi*4 + 0x38], eax
inc edi
cmp edi, esi
jl 0x4316e4
fld dword [esp + 0x10]
mov ecx, dword [esp + 0x740]
fld st(0)
cmp esi, 1
jle 0x431782
mov eax, dword [esp + 0x708]
mov edx, dword [esp + 0x38]
mov dword [esp + 8], eax
lea edi, [eax + 0x7d]
cmp edx, edi
jle 0x43173f
mov eax, dword [esp + 0x3c]
add eax, edx
mov edx, edi
sub eax, dword [esp + 8]
add eax, 0xffffff83
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], edi
jmp 0x431743
mov eax, dword [esp + 0x3c]
mov edi, dword [esp + 0x70c]
mov dword [esp + 8], edi
lea edi, [edi + 0x7d]
cmp eax, edi
jle 0x431766
add eax, edx
sub eax, dword [esp + 8]
add eax, 0xffffff83
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edi
xor eax, eax
mov edx, dword [esp + eax*4 + 0x38]
cmp edx, 0x1e00
jl 0x431779
mov edx, 0x1e00
mov dword [esp + eax*4 + 0x38], edx
inc eax
cmp eax, esi
jl 0x431768
mov dword [esp + 0x744], ebx
xor edx, edx
mov dword [esp + 0x748], esi
mov dword [esp + 0x740], ecx
xor eax, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
cmp dword [esp + 0x744], 0
jle 0x431990
xor ecx, ecx
lea eax, [esp + edx*8 + 0x6e4]
mov edi, dword [esp + 0x744]
xor esi, esi
mov ebx, dword [eax + ecx*4]
test ebx, ebx
jle 0x431915
mov dword [esp + 0x20], ebx
fild dword [esp + 0x20]
fsqrt
fst dword [esp + ecx*4 + 0x14]
faddp st(1)
inc ecx
cmp ecx, edi
jl 0x4317c3
xor ebx, ebx
lea esi, [esp + edx*8 + 0x6e4]
fcom st(1)
fnstsw ax
sahf
ja 0x431811
fstp st(0)
mov eax, dword [esp + 0x744]
mov dword [esi + ebx*4], 0
inc ebx
cmp ebx, eax
jl 0x4317fc
mov dword [esp + 0x744], eax
jmp 0x431854
fild dword [esp + edx*4 + 0x38]
mov dword [esp + 8], edx
fstp dword [esp + 0x1c]
fstp dword [esp + 0xc]
fstp dword [esp + 0x10]
mov edi, dword [esp + 0x744]
fld dword [esp + ebx*4 + 0x14]
fmul dword [esp + 0x1c]
fdiv dword [esp + 0xc]
call fcn.0040c080
mov dword [esi + ebx*4], eax
inc ebx
cmp ebx, edi
jl 0x43182c
fld dword [esp + 0x10]
mov edx, dword [esp + 8]
mov dword [esp + 0x744], edi
cmp dword [esp + 0x744], 1
jle 0x4318dd
mov ecx, dword [esp + edx*8 + 0x28]
mov eax, dword [esp + edx*8 + 0x6e4]
lea edi, [ecx + 0x20]
cmp eax, edi
jle 0x43188e
mov ebx, dword [esp + edx*8 + 0x6e8]
add ebx, eax
mov eax, edi
sub ebx, ecx
add ebx, 0xffffffe0
mov dword [esp + edx*8 + 0x6e8], ebx
mov dword [esp + edx*8 + 0x6e4], edi
mov ebx, dword [esp + edx*8 + 0x2c]
mov ecx, dword [esp + edx*8 + 0x6e8]
lea edi, [ebx + 0x20]
cmp ecx, edi
jle 0x4318b5
add eax, ecx
sub eax, ebx
add eax, 0xffffffe0
mov dword [esp + edx*8 + 0x6e4], eax
mov dword [esp + edx*8 + 0x6e8], edi
mov ebx, dword [esp + 0x744]
xor eax, eax
mov ecx, dword [esi + eax*4]
cmp ecx, 0xfff
jl 0x4318ce
mov ecx, 0xfff
mov dword [esi + eax*4], ecx
inc eax
cmp eax, ebx
jl 0x4318be
mov dword [esp + 0x744], ebx
inc edx
cmp edx, dword [esp + 0x748]
jge 0x4318ee
fld st(0)
jmp 0x431799
fstp st(0)
mov esi, dword [esp + 0x748]
test esi, esi
mov ebx, dword [esp + 0x744]
mov ecx, dword [esp + 0x740]
jmp 0x430897
mov dword [esp + eax*4 + 8], edi
jmp 0x431693
mov dword [esp + ecx*4 + 0x14], esi
jmp 0x4317de
xor esi, esi
mov dword [esp + ecx*4 + 0xc], esi
jmp 0x430757
push edi
push ebx
call fcn.0042b590
add esp, 8
jmp 0x4305d4
mov eax, dword [esp + 0x50]
push 0x46d568
push dword [eax + 0xc]
call fcn.00418fd0
jmp 0x4315d6
inc edi
add edx, 0x2908
cmp edi, dword [esp + 0x748]
jl 0x42ff83
jmp 0x4300fb
xor eax, eax
jmp 0x43063a
test ebx, ebx
jmp 0x43083a
fstp st(1)
fstp st(0)
jmp 0x4304d0
fstp st(0)
jmp 0x43083a
fstp st(0)
fstp st(1)
fstp st(0)
jmp 0x430897
fstp st(0)
jmp 0x4318dd