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

Disassembly:
push ebx
push edi
mov edx, 0x44
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x40ce23
call fcn.0047d450
mov dword [0x587001], 0x703
mov dword [0x587001], 0x705
fld qword [0x5902b4]
fstp qword [esp + 0x40]
mov dword [0x587001], 0x70b
push 1
call fcn.00457d34
mov dword [esp + 0xec], eax
mov dword [0x587001], 0x70c
push 2
call fcn.00457d34
mov dword [esp + 0xf0], eax
mov dword [0x587001], 0x70d
push 3
call fcn.00457d34
mov dword [esp + 0xf4], eax
mov dword [0x587001], 0x70e
push 0xffffffff
push 1
push dword [esp + 0xf8]
call fcn.00468483
push eax
call fcn.0046852e
mov dword [esp + 0xfc], eax
mov dword [0x587001], 0x70f
push 0xffffffff
push 0
push dword [esp + 0xf8]
call fcn.004684c6
push eax
call fcn.0046852e
mov dword [esp + 0x100], eax
mov dword [0x587001], 0x710
mov dword [esp + 0x104], 0
mov dword [0x587001], 0x712
push 0
push 0
push 0
push dword [esp + 0xfc]
call fcn.004684a5
push eax
push dword [esp + 0x100]
call fcn.00468483
push eax
push dword [esp + 0x104]
call fcn.004684c6
push eax
call fcn.00468266
mov dword [esp + 0xf0], eax
mov dword [0x587001], 0x713
push 0
push 0
push 0
push dword [esp + 0x100]
call fcn.004684a5
push eax
push dword [esp + 0x104]
call fcn.00468483
push eax
push dword [esp + 0x108]
call fcn.004684c6
push eax
call fcn.00468266
mov dword [esp + 0xf4], eax
mov dword [0x587001], 0x718
push 0xff
push 0xc8
push 0xff
push 0xc8
pop eax
call fcn.0042e090
mov dword [esp], eax
mov dword [0x587001], 0x719
push 0xff
push 0x96
push 0x96
push 0x96
pop eax
call fcn.0042e090
mov dword [esp + 4], eax
mov dword [0x587001], 0x71a
push 0xff
push 0xff
push 0xe0
push 0xcc
pop eax
call fcn.0042e090
mov dword [esp + 8], eax
mov dword [0x587001], 0x71b
push 0xff
push 0xcc
push 0x52
push 0
pop eax
call fcn.0042e090
mov dword [esp + 0xc], eax
mov dword [0x587001], 0x71c
push 0xff
push 0
push 0
push 0
pop eax
call fcn.0042e090
mov dword [esp + 0x10], eax
mov dword [0x587001], 0x71d
push 8
mov eax, 0x58902e
push eax
push 0xffffffff
call fcn.0047c74f
mov dword [esp + 0x14], eax
mov dword [0x587001], 0x71e
push 6
mov eax, 0x58902e
push eax
push 0xffffffff
call fcn.0047c74f
mov dword [esp + 0x18], eax
mov dword [0x587001], 0x721
push dword [esp + 0xf4]
push dword [esp + 0xf4]
call fcn.0041ee99
mov ebx, eax
inc ebx
mov dword [esp + 0x1c], ebx
mov dword [0x587001], 0x725
push dword [esp + 0x11c]
call fcn.004783c0
and eax, eax
je 0x40eee2
mov dword [0x587001], 0x727
call fcn.00478ff0
sub esp, 8
fstp qword [esp]
call fcn.00479010
sub esp, 8
fstp qword [esp]
fld qword [0x5902bc]
sub esp, 8
fstp qword [esp]
fld qword [0x5902bc]
sub esp, 8
fstp qword [esp]
call fcn.00479160
mov dword [0x587001], 0x728
push 0xff
push 0xff
push 0xff
push 0xff
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x729
call fcn.00479360
mov dword [0x587001], 0x72b
push 0xff
push 0
push 0
push 0
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x72c
mov ebx, dword [esp + 0x120]
and ebx, ebx
jne 0x40d207
mov dword [0x587001], 0x72d
call fcn.00478ff0
sub esp, 8
fstp qword [esp]
call fcn.00479010
sub esp, 8
fstp qword [esp]
fld qword [0x5902bc]
sub esp, 8
fstp qword [esp]
fld qword [0x5902bc]
sub esp, 8
fstp qword [esp]
call fcn.00479160
mov dword [0x587001], 0x72e
fld qword [0x5902c4]
sub esp, 8
fstp qword [esp]
call fcn.00479510
mov dword [0x587001], 0x72f
mov dword [0x587001], 0x732
call fcn.00479010
fidiv dword [0x5a87c4]
fstp dword [esp + 0xbc]
mov dword [0x587001], 0x733
call fcn.00478ff0
fidiv dword [0x5a875c]
fstp dword [esp + 0xc0]
mov dword [0x587001], 0x734
fld dword [esp + 0xc0]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0xc4]
sub esp, 8
fstp qword [esp]
call fcn.004796b0
mov dword [0x587001], 0x735
push dword [esp + 0x14]
call fcn.0047c7b2
push eax
call fcn.004796d0
mov dword [0x587001], 0x737
fld qword [0x5902cc]
fstp qword [esp + 0x8c]
mov dword [0x587001], 0x738
fld qword [0x5902cc]
fstp qword [esp + 0x84]
mov dword [0x587001], 0x739
cmp dword [esp + 0x120], 0
je 0x40d39e
mov dword [0x587001], 0x73a
push edx
call fcn.0047d2b0
pop edx
push eax
mov edx, 0x58fc72
push edx
call fcn.0047d2f0
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0xf8]
call fcn.0040f308
pop eax
mov edx, 0x58b5b4
push edx
call fcn.0047d2f0
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0xfc]
call fcn.0040f308
pop eax
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x73b
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479b50
mov dword [0x587001], 0x73c
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x73e
fld qword [esp + 0x8c]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.00479f30
fld qword [esp]
fxch st(1)
add esp, 8
faddp st(1)
fadd qword [0x59029c]
fstp qword [esp + 0x8c]
mov dword [0x587001], 0x73f
mov dword [0x587001], 0x741
push dword [esp + 0x18]
call fcn.0047c7b2
push eax
call fcn.004796d0
mov dword [0x587001], 0x743
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0xf4]
call fcn.0040f308
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x744
fild dword [0x5a87c4]
fsub qword [esp + 0x84]
fadd qword [0x5902d4]
fstp qword [esp + 0x94]
mov dword [0x587001], 0x746
push dword [0x5a875c]
fild dword [esp]
push eax
fstp qword [esp]
pop dword [esp + 0xa0]
pop dword [esp + 0xa0]
mov dword [0x587001], 0x747
fild dword [0x5a875c]
fidiv dword [0x5a87c4]
fstp qword [esp + 0x108]
mov dword [0x587001], 0x748
fild dword [0x5a87c4]
fmul qword [esp + 0x108]
fstp qword [esp + 0x9c]
mov dword [0x587001], 0x749
fld qword [esp + 0x9c]
fsub qword [esp + 0x8c]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.00479f30
fld qword [esp]
fxch st(1)
add esp, 8
fmul qword [0x590294]
fsubp st(1)
fadd qword [0x5902dc]
fstp qword [esp + 0x9c]
mov dword [0x587001], 0x74a
fld qword [esp + 0x9c]
fdiv qword [0x590294]
fstp qword [esp + 0xa4]
mov dword [0x587001], 0x74c
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479b50
mov dword [0x587001], 0x74d
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x74e
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0xf8]
call fcn.0040f308
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x74f
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
fld qword [esp + 0x8c]
fadd qword [esp + 0x9c]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x40]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
fsubp st(1)
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
call fcn.00479b50
mov dword [0x587001], 0x750
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x751
fld qword [esp + 0x8c]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.00479f30
fld qword [esp]
fxch st(1)
add esp, 8
faddp st(1)
fadd qword [0x590294]
fstp qword [esp + 0x8c]
mov dword [0x587001], 0x755
fld qword [0x5902e4]
fstp qword [esp + 0xb4]
mov dword [0x587001], 0x756
fld qword [esp + 0x94]
fidiv dword [esp + 0x1c]
fstp dword [esp + 0x3c]
mov dword [0x587001], 0x75b
mov ebx, dword [esp + 0x1c]
cmp ebx, 0xe
jle 0x40d625
mov ebx, dword [esp + 0xec]
and ebx, ebx
je 0x40d625
mov ebx, dword [esp + 0xec]
cmp ebx, 1
je 0x40d625
jmp 0x40d62c
mov eax, 1
jmp 0x40d62e
xor eax, eax
and eax, eax
je 0x40d653
mov dword [0x587001], 0x75c
mov dword [esp + 0x68], 3
mov dword [0x587001], 0x75d
jmp 0x40d74e
mov dword [0x587001], 0x75d
mov ebx, dword [esp + 0x1c]
push dword [esp + 0xf0]
call fcn.00408627
mov edi, eax
push dword [esp + 0xf4]
call fcn.00408627
add edi, eax
cmp ebx, edi
jle 0x40d69b
mov ebx, dword [esp + 0xec]
cmp ebx, 3
je 0x40d69b
mov ebx, dword [esp + 0xec]
cmp ebx, 2
je 0x40d69b
jmp 0x40d6a2
mov eax, 1
jmp 0x40d6a4
xor eax, eax
and eax, eax
je 0x40d6c9
mov dword [0x587001], 0x75e
mov dword [esp + 0x68], 2
mov dword [0x587001], 0x75f
jmp 0x40d74e
mov dword [0x587001], 0x75f
push dword [esp + 0xf4]
push dword [esp + 0xf4]
call fcn.0041d0a7
mov ebx, eax
cmp ebx, 2
jl 0x40d707
mov ebx, dword [esp + 0xec]
cmp ebx, 6
je 0x40d707
mov ebx, dword [esp + 0xec]
cmp ebx, 4
je 0x40d707
jmp 0x40d70e
mov eax, 1
jmp 0x40d710
xor eax, eax
and eax, eax
je 0x40d732
mov dword [0x587001], 0x760
mov dword [esp + 0x68], 1
mov dword [0x587001], 0x761
jmp 0x40d74e
mov dword [0x587001], 0x761
mov dword [0x587001], 0x762
mov dword [esp + 0x68], 0
mov dword [0x587001], 0x763
mov dword [0x587001], 0x766
mov dword [esp + 0x2c], 0
mov dword [0x587001], 0x767
mov dword [esp + 0x28], 1
mov dword [0x587001], 0x768
mov dword [esp + 0x34], 0
jmp 0x40d79a
mov dword [0x587001], 0x768
mov ebx, dword [esp + 0x1c]
dec ebx
cmp ebx, dword [esp + 0x34]
jl 0x40e9b7
mov dword [0x587001], 0x769
push dword [esp + 0x34]
push 3
push dword [esp + 0xf8]
call fcn.0046852e
mov dword [esp + 0x6c], eax
mov dword [0x587001], 0x76a
mov ebx, dword [esp + 0x68]
cmp ebx, 3
jne 0x40dac0
mov dword [0x587001], 0x76b
cmp dword [esp + 0x28], 0
je 0x40d903
mov dword [0x587001], 0x76c
push dword [esp]
call fcn.004791a0
mov dword [0x587001], 0x76d
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
fld dword [esp + 0x44]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
fld qword [esp + 0x9c]
fld dword [esp + 0x54]
fimul dword [esp + 0x4c]
faddp st(1)
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
call fcn.00479160
mov dword [0x587001], 0x76e
call fcn.00479360
mov dword [0x587001], 0x76f
push dword [esp + 8]
call fcn.004791a0
mov dword [0x587001], 0x770
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
fld dword [esp + 0x44]
sub esp, 8
fstp qword [esp]
fld qword [esp + 0x9c]
fadd qword [esp + 0xb4]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
fld qword [esp + 0x9c]
fld dword [esp + 0x54]
fimul dword [esp + 0x4c]
faddp st(1)
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
call fcn.00479160
mov dword [0x587001], 0x771
call fcn.00479360
mov dword [0x587001], 0x772
mov dword [esp + 0x28], 0
mov dword [0x587001], 0x773
jmp 0x40d91f
mov dword [0x587001], 0x773
mov dword [0x587001], 0x774
mov dword [esp + 0x28], 1
mov dword [0x587001], 0x775
mov dword [0x587001], 0x776
push edx
call fcn.0047d2b0
pop edx
push eax
push 1
push dword [esp + 0x74]
call fcn.00468898
push eax
call fcn.00422b7f
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x777
fld qword [esp + 0x84]
fld dword [esp + 0x3c]
fimul dword [esp + 0x34]
faddp st(1)
fld dword [esp + 0x3c]
fdiv qword [0x590294]
faddp st(1)
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
fdiv qword [0x590294]
fsubp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x778
fld qword [esp + 0x74]
fld dword [esp + 0x104]
fcompp
fnstsw ax
test ah, 1
je 0x40da45
mov dword [0x587001], 0x779
fld qword [esp + 0x8c]
fadd qword [esp + 0x9c]
fadd qword [0x590294]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x7c]
push dword [edx + 4]
push dword [edx]
call fcn.00479b50
mov dword [0x587001], 0x77a
push 0xff
push 0
push 0
push 0
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x77b
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x77c
call fcn.00479360
mov dword [0x587001], 0x77d
mov dword [0x587001], 0x77e
fld qword [esp + 0x74]
push edx
call fcn.0047d2b0
pop edx
push eax
sub esp, 8
fstp qword [esp]
mov edx, dword [esp + 0x3c]
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2f0
mov edx, 0x588462
push edx
call fcn.0047d2f0
call fcn.0042e122
add dword [esp], edx
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
call fcn.0042e140
faddp st(1)
fadd dword [0x590268]
fstp dword [esp + 0x104]
mov dword [0x587001], 0x77f
jmp 0x40e999
mov dword [0x587001], 0x77f
mov ebx, dword [esp + 0x68]
cmp ebx, 2
jne 0x40db00
push dword [esp + 0x6c]
call fcn.00468898
mov ebx, eax
and ebx, ebx
je 0x40daec
mov ebx, dword [esp + 0x34]
and ebx, ebx
je 0x40daec
jmp 0x40daf3
mov eax, 1
jmp 0x40daf5
xor eax, eax
and eax, eax
je 0x40db00
mov eax, 1
jmp 0x40db02
xor eax, eax
and eax, eax
je 0x40df82
mov dword [0x587001], 0x780
fld qword [esp + 0x84]
fld dword [esp + 0x3c]
fimul dword [esp + 0x34]
faddp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x781
push dword [esp + 0x6c]
call fcn.00468898
mov ebx, eax
neg ebx
add ebx, 7
mov dword [esp + 0x70], ebx
mov dword [0x587001], 0x782
mov ebx, dword [esp + 0x34]
add ebx, dword [esp + 0x70]
cmp ebx, dword [esp + 0x1c]
jle 0x40db85
mov dword [0x587001], 0x783
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x34]
add edi, dword [esp + 0x70]
sub edi, dword [esp + 0x1c]
sub ebx, edi
mov dword [esp + 0x70], ebx
mov dword [0x587001], 0x784
mov dword [0x587001], 0x785
fld dword [esp + 0x3c]
fimul dword [esp + 0x70]
fstp qword [esp + 0x7c]
mov dword [0x587001], 0x786
cmp dword [esp + 0x28], 0
je 0x40dca7
mov dword [0x587001], 0x787
push dword [esp]
call fcn.004791a0
mov dword [0x587001], 0x788
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x84]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x789
call fcn.00479360
mov dword [0x587001], 0x78a
push dword [esp + 8]
call fcn.004791a0
mov dword [0x587001], 0x78b
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x84]
push dword [edx + 4]
push dword [edx]
fld qword [esp + 0x9c]
fadd qword [esp + 0xb4]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x78c
call fcn.00479360
mov dword [0x587001], 0x78d
mov dword [esp + 0x28], 0
mov dword [0x587001], 0x78e
jmp 0x40dcc3
mov dword [0x587001], 0x78e
mov dword [0x587001], 0x78f
mov dword [esp + 0x28], 1
mov dword [0x587001], 0x790
mov dword [0x587001], 0x791
push dword [esp + 0x6c]
call fcn.004684a5
mov ebx, eax
cmp ebx, 1
je 0x40dcfd
push dword [esp + 0x6c]
call fcn.00468483
mov ebx, eax
cmp ebx, dword [esp + 0xfc]
jg 0x40dcfd
jmp 0x40dd04
mov eax, 1
jmp 0x40dd06
xor eax, eax
and eax, eax
je 0x40dd73
mov dword [0x587001], 0x792
push edx
call fcn.0047d2b0
pop edx
push eax
push 0
push dword [esp + 0x74]
call fcn.00468483
push eax
call fcn.00415586
mov edx, 0x588462
push edx
call fcn.0047d2f0
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0x78]
call fcn.004684a5
cdq
push edx
push eax
call fcn.0047ad00
pop eax
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x793
jmp 0x40ddb2
mov dword [0x587001], 0x793
mov dword [0x587001], 0x794
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0x74]
call fcn.004684a5
cdq
push edx
push eax
call fcn.0047ad00
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x795
mov dword [0x587001], 0x796
push dword [esp + 0x6c]
call fcn.00468483
mov dword [esp + 0xfc], eax
mov dword [0x587001], 0x797
fld qword [esp + 0x74]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
faddp st(1)
fadd qword [0x5902bc]
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
fcompp
fnstsw ax
test ah, 1
je 0x40de61
mov dword [0x587001], 0x798
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
fsubp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x799
mov dword [0x587001], 0x79a
fld qword [esp + 0x74]
fld dword [esp + 0x104]
fcompp
fnstsw ax
test ah, 1
je 0x40df07
mov dword [0x587001], 0x79b
fld qword [esp + 0x8c]
fadd qword [esp + 0x9c]
fadd qword [0x590294]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x7c]
push dword [edx + 4]
push dword [edx]
call fcn.00479b50
mov dword [0x587001], 0x79c
push 0xff
push 0
push 0
push 0
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x79d
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x79e
call fcn.00479360
mov dword [0x587001], 0x79f
mov dword [0x587001], 0x7a0
fld qword [esp + 0x74]
push edx
call fcn.0047d2b0
pop edx
push eax
sub esp, 8
fstp qword [esp]
mov edx, dword [esp + 0x3c]
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2f0
mov edx, 0x588462
push edx
call fcn.0047d2f0
call fcn.0042e122
add dword [esp], edx
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
call fcn.0042e140
faddp st(1)
fadd dword [0x590268]
fstp dword [esp + 0x104]
mov dword [0x587001], 0x7a1
jmp 0x40e999
mov dword [0x587001], 0x7a1
mov ebx, dword [esp + 0x68]
cmp ebx, 1
jne 0x40dfc3
push dword [esp + 0x6c]
call fcn.004684a5
mov ebx, eax
cmp ebx, 1
je 0x40dfaf
mov ebx, dword [esp + 0x34]
and ebx, ebx
je 0x40dfaf
jmp 0x40dfb6
mov eax, 1
jmp 0x40dfb8
xor eax, eax
and eax, eax
je 0x40dfc3
mov eax, 1
jmp 0x40dfc5
xor eax, eax
and eax, eax
je 0x40e372
mov dword [0x587001], 0x7a2
fld qword [esp + 0x84]
fld dword [esp + 0x3c]
fimul dword [esp + 0x34]
faddp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x7a3
push dword [esp + 0x6c]
call fcn.00408627
mov ebx, eax
push dword [esp + 0x6c]
call fcn.004684a5
sub ebx, eax
mov dword [esp + 0x70], ebx
mov dword [0x587001], 0x7a4
mov ebx, dword [esp + 0x34]
add ebx, dword [esp + 0x70]
cmp ebx, dword [esp + 0x1c]
jle 0x40e04e
mov dword [0x587001], 0x7a5
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x34]
add edi, dword [esp + 0x70]
sub edi, dword [esp + 0x1c]
sub ebx, edi
mov dword [esp + 0x70], ebx
mov dword [0x587001], 0x7a6
mov dword [0x587001], 0x7a7
fld dword [esp + 0x3c]
fimul dword [esp + 0x70]
fstp qword [esp + 0x7c]
mov dword [0x587001], 0x7a8
cmp dword [esp + 0x28], 0
je 0x40e170
mov dword [0x587001], 0x7a9
push dword [esp]
call fcn.004791a0
mov dword [0x587001], 0x7aa
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x84]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x7ab
call fcn.00479360
mov dword [0x587001], 0x7ac
push dword [esp + 8]
call fcn.004791a0
mov dword [0x587001], 0x7ad
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x84]
push dword [edx + 4]
push dword [edx]
fld qword [esp + 0x9c]
fadd qword [esp + 0xb4]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x7ae
call fcn.00479360
mov dword [0x587001], 0x7af
mov dword [esp + 0x28], 0
mov dword [0x587001], 0x7b0
jmp 0x40e18c
mov dword [0x587001], 0x7b0
mov dword [0x587001], 0x7b1
mov dword [esp + 0x28], 1
mov dword [0x587001], 0x7b2
mov dword [0x587001], 0x7b6
push edx
call fcn.0047d2b0
pop edx
push eax
push 3
push dword [esp + 0x74]
call fcn.00468483
push eax
call fcn.00415586
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x7b8
fld qword [esp + 0x74]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
faddp st(1)
fadd qword [0x5902bc]
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
fcompp
fnstsw ax
test ah, 1
je 0x40e251
mov dword [0x587001], 0x7b9
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
fsubp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x7ba
mov dword [0x587001], 0x7bb
fld qword [esp + 0x74]
fld dword [esp + 0x104]
fcompp
fnstsw ax
test ah, 1
je 0x40e2f7
mov dword [0x587001], 0x7bc
fld qword [esp + 0x8c]
fadd qword [esp + 0x9c]
fadd qword [0x590294]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x7c]
push dword [edx + 4]
push dword [edx]
call fcn.00479b50
mov dword [0x587001], 0x7bd
push 0xff
push 0
push 0
push 0
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x7be
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x7bf
call fcn.00479360
mov dword [0x587001], 0x7c0
mov dword [0x587001], 0x7c1
fld qword [esp + 0x74]
push edx
call fcn.0047d2b0
pop edx
push eax
sub esp, 8
fstp qword [esp]
mov edx, dword [esp + 0x3c]
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2f0
mov edx, 0x588462
push edx
call fcn.0047d2f0
call fcn.0042e122
add dword [esp], edx
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
call fcn.0042e140
faddp st(1)
fadd dword [0x590268]
fstp dword [esp + 0x104]
mov dword [0x587001], 0x7c2
jmp 0x40e999
mov dword [0x587001], 0x7c2
mov ebx, dword [esp + 0x68]
and ebx, ebx
jne 0x40e3b2
push dword [esp + 0x6c]
call fcn.004688b9
mov ebx, eax
cmp ebx, 1
je 0x40e39e
mov ebx, dword [esp + 0x34]
and ebx, ebx
je 0x40e39e
jmp 0x40e3a5
mov eax, 1
jmp 0x40e3a7
xor eax, eax
and eax, eax
je 0x40e3b2
mov eax, 1
jmp 0x40e3b4
xor eax, eax
and eax, eax
je 0x40e999
mov dword [0x587001], 0x7c3
fld qword [esp + 0x84]
fld dword [esp + 0x3c]
fimul dword [esp + 0x34]
faddp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x7c4
push dword [esp + 0x6c]
call fcn.00422eca
mov ebx, eax
push dword [esp + 0x6c]
call fcn.004688b9
sub ebx, eax
mov dword [esp + 0x70], ebx
mov dword [0x587001], 0x7c5
mov ebx, dword [esp + 0x34]
add ebx, dword [esp + 0x70]
cmp ebx, dword [esp + 0x1c]
jle 0x40e43d
mov dword [0x587001], 0x7c6
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x34]
add edi, dword [esp + 0x70]
sub edi, dword [esp + 0x1c]
sub ebx, edi
mov dword [esp + 0x70], ebx
mov dword [0x587001], 0x7c7
mov dword [0x587001], 0x7c8
fld dword [esp + 0x3c]
fimul dword [esp + 0x70]
fstp qword [esp + 0x7c]
mov dword [0x587001], 0x7c9
cmp dword [esp + 0x28], 0
je 0x40e55f
mov dword [0x587001], 0x7ca
push dword [esp]
call fcn.004791a0
mov dword [0x587001], 0x7cb
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x84]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x7cc
call fcn.00479360
mov dword [0x587001], 0x7cd
push dword [esp + 8]
call fcn.004791a0
mov dword [0x587001], 0x7ce
lea edx, [esp + 0xa4]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x84]
push dword [edx + 4]
push dword [edx]
fld qword [esp + 0x9c]
fadd qword [esp + 0xb4]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x8c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x7cf
call fcn.00479360
mov dword [0x587001], 0x7d0
mov dword [esp + 0x28], 0
mov dword [0x587001], 0x7d1
jmp 0x40e57b
mov dword [0x587001], 0x7d1
mov dword [0x587001], 0x7d2
mov dword [esp + 0x28], 1
mov dword [0x587001], 0x7d3
mov dword [0x587001], 0x7d4
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0x74]
call fcn.004684c6
cdq
push edx
push eax
call fcn.0047ad00
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x7d5
push dword [esp + 0x30]
call fcn.0047a1c0
fld dword [esp + 0x3c]
push dword [esp + 0x6c]
call fcn.00422eca
mov dword [esp - 4], eax
fild dword [esp - 4]
fadd qword [0x5902c4]
fmulp st(1)
fcompp
fnstsw ax
test ah, 0x41
jne 0x40e7a3
mov dword [0x587001], 0x7d6
fld qword [esp + 0x74]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
faddp st(1)
fadd qword [0x5902bc]
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
fcompp
fnstsw ax
test ah, 1
je 0x40e682
mov dword [0x587001], 0x7d7
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
fsubp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x7d8
mov dword [0x587001], 0x7d9
fld qword [esp + 0x74]
fld dword [esp + 0x104]
fcompp
fnstsw ax
test ah, 1
je 0x40e728
mov dword [0x587001], 0x7da
fld qword [esp + 0x8c]
fadd qword [esp + 0x9c]
fadd qword [0x590294]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x7c]
push dword [edx + 4]
push dword [edx]
call fcn.00479b50
mov dword [0x587001], 0x7db
push 0xff
push 0
push 0
push 0
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x7dc
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x7dd
call fcn.00479360
mov dword [0x587001], 0x7de
mov dword [0x587001], 0x7df
fld qword [esp + 0x74]
push edx
call fcn.0047d2b0
pop edx
push eax
sub esp, 8
fstp qword [esp]
mov edx, dword [esp + 0x3c]
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2f0
mov edx, 0x588462
push edx
call fcn.0047d2f0
call fcn.0042e122
add dword [esp], edx
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
call fcn.0042e140
faddp st(1)
fadd dword [0x590268]
fstp dword [esp + 0x104]
mov dword [0x587001], 0x7e0
jmp 0x40e98f
mov dword [0x587001], 0x7e0
mov dword [0x587001], 0x7e1
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2b0
pop edx
push eax
push 2
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0x80]
call fcn.004684c6
cdq
push edx
push eax
call fcn.0047ad00
call fcn.0042e122
add dword [esp], edx
call fcn.0047afd0
lea eax, [esp + 0x34]
push eax
call fcn.0047d380
mov dword [0x587001], 0x7e2
push dword [esp + 0x30]
call fcn.0047a1c0
fld dword [esp + 0x3c]
push dword [esp + 0x6c]
call fcn.00422eca
mov dword [esp - 4], eax
fild dword [esp - 4]
fadd qword [0x5902c4]
fmulp st(1)
fcompp
fnstsw ax
test ah, 0x41
jne 0x40e985
mov dword [0x587001], 0x7e3
fld qword [esp + 0x74]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
faddp st(1)
fadd qword [0x5902bc]
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
fcompp
fnstsw ax
test ah, 1
je 0x40e8cf
mov dword [0x587001], 0x7e4
fld qword [esp + 0x84]
fadd qword [esp + 0x94]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
push dword [esp + 0x38]
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
fsubp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x74]
mov dword [0x587001], 0x7e5
mov dword [0x587001], 0x7e6
fld qword [esp + 0x74]
fld dword [esp + 0x104]
fcompp
fnstsw ax
test ah, 1
je 0x40e919
mov dword [0x587001], 0x7e7
push dword [esp + 0x30]
call fcn.00479b90
mov dword [0x587001], 0x7e8
call fcn.00479360
mov dword [0x587001], 0x7e9
mov dword [0x587001], 0x7ea
fld qword [esp + 0x74]
push edx
call fcn.0047d2b0
pop edx
push eax
sub esp, 8
fstp qword [esp]
mov edx, dword [esp + 0x3c]
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2f0
mov edx, 0x588462
push edx
call fcn.0047d2f0
call fcn.0042e122
add dword [esp], edx
call fcn.0047a1c0
fld qword [esp]
fxch st(1)
add esp, 8
call fcn.0042e140
faddp st(1)
fadd dword [0x590268]
fstp dword [esp + 0x104]
mov dword [0x587001], 0x7eb
mov dword [0x587001], 0x7ec
mov dword [0x587001], 0x7ed
mov dword [0x587001], 0x7ee
inc dword [esp + 0x34]
jno 0x40d790
mov dword [0x587001], 0x7f0
fld qword [esp + 0x8c]
fadd qword [esp + 0x9c]
fadd qword [0x5902ec]
fstp qword [esp + 0xc4]
mov dword [0x587001], 0x7f1
fld qword [esp + 0x8c]
fadd qword [esp + 0x9c]
fadd qword [0x5902f4]
fstp qword [esp + 0xcc]
mov dword [0x587001], 0x7f2
fld qword [esp + 0x8c]
fadd qword [esp + 0xa4]
fadd qword [0x5902bc]
fstp qword [esp + 0xd4]
mov dword [0x587001], 0x7f3
fld qword [esp + 0x8c]
fadd qword [0x5902fc]
fstp qword [esp + 0xdc]
mov dword [0x587001], 0x7f4
fld qword [esp + 0x8c]
fadd qword [0x5902a4]
fstp qword [esp + 0xe4]
mov dword [0x587001], 0x7f6
push 0xff
push 0x99
push 0x4c
push 0
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x7f7
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x7f8
fld qword [0x590304]
sub esp, 8
fstp qword [esp]
call fcn.00479510
mov dword [0x587001], 0x7f9
fld qword [0x590304]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
fld qword [esp + 0x9c]
fadd qword [esp + 0xb4]
fadd qword [0x5902bc]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x9c]
push dword [edx + 4]
push dword [edx]
call fcn.00479160
mov dword [0x587001], 0x7fa
call fcn.00479360
mov dword [0x587001], 0x804
mov dword [esp + 0x34], 0
jmp 0x40eb60
mov dword [0x587001], 0x804
mov ebx, dword [esp + 0x1c]
dec ebx
cmp ebx, dword [esp + 0x34]
jl 0x40eeaf
mov dword [0x587001], 0x805
push edx
call fcn.0047d2b0
pop edx
push eax
push edx
call fcn.0047d2b0
pop edx
push eax
push dword [esp + 0x3c]
push 3
push dword [esp + 0x100]
call fcn.0046852e
push eax
mov eax, 0x5889f4
push eax
call fcn.0046887f
lea eax, [esp + 0x24]
push eax
call fcn.0047d380
mov dword [0x587001], 0x807
push dword [esp + 0x20]
push 0
push 0
call fcn.00468d5b
mov dword [0x587001], 0x808
mov eax, 0x58ba78
push eax
push 0
call fcn.00468d49
and eax, eax
je 0x40ee91
mov dword [0x587001], 0x809
push 0
call fcn.00468db3
and eax, eax
je 0x40ede1
mov dword [0x587001], 0x80a
mov eax, 0x58befc
push eax
push 0
call fcn.00468ddb
push eax
push 0
call fcn.00468f99
mov dword [esp + 0x38], eax
mov dword [0x587001], 0x80b
push 0
call fcn.00468fc5
mov dword [0x587001], 0x80d
fld qword [esp + 0x84]
fld dword [esp + 0x3c]
fimul dword [esp + 0x34]
faddp st(1)
fld dword [esp + 0x3c]
fdiv qword [0x590294]
faddp st(1)
fadd qword [0x5902bc]
fstp qword [esp + 0x50]
mov dword [0x587001], 0x80e
mov ebx, dword [esp + 0x38]
and ebx, ebx
jne 0x40ecb3
mov dword [0x587001], 0x810
fld qword [esp + 0xc4]
fstp qword [esp + 0x58]
mov dword [0x587001], 0x811
jmp 0x40ed71
mov dword [0x587001], 0x811
mov ebx, dword [esp + 0x38]
cmp ebx, 1
jne 0x40ecea
mov dword [0x587001], 0x812
fld qword [esp + 0xcc]
fstp qword [esp + 0x58]
mov dword [0x587001], 0x813
jmp 0x40ed71
mov dword [0x587001], 0x813
mov ebx, dword [esp + 0x38]
cmp ebx, 2
jne 0x40ed1e
mov dword [0x587001], 0x815
fld qword [esp + 0xd4]
fstp qword [esp + 0x58]
mov dword [0x587001], 0x816
jmp 0x40ed71
mov dword [0x587001], 0x816
mov ebx, dword [esp + 0x38]
cmp ebx, 3
jne 0x40ed52
mov dword [0x587001], 0x817
fld qword [esp + 0xdc]
fstp qword [esp + 0x58]
mov dword [0x587001], 0x818
jmp 0x40ed71
mov dword [0x587001], 0x818
mov dword [0x587001], 0x81a
fld qword [esp + 0xe4]
fstp qword [esp + 0x58]
mov dword [0x587001], 0x81b
mov dword [0x587001], 0x81c
push 0xff
push 0x66
push 0x33
push 0
pop eax
call fcn.0042e090
push eax
call fcn.004791a0
mov dword [0x587001], 0x81d
fld qword [0x59030c]
sub esp, 8
fstp qword [esp]
lea edx, [esp + 0x60]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x60]
push dword [edx + 4]
push dword [edx]
call fcn.0047a3a0
mov dword [0x587001], 0x81e
call fcn.00479360
mov dword [0x587001], 0x820
mov dword [0x587001], 0x821
fld qword [esp + 0x40]
fcomp qword [0x5902bc]
fnstsw ax
test ah, 0x41
jne 0x40ee63
mov dword [0x587001], 0x822
lea edx, [esp + 0x48]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x48]
push dword [edx + 4]
push dword [edx]
call fcn.00479b50
mov dword [0x587001], 0x823
lea edx, [esp + 0x58]
push dword [edx + 4]
push dword [edx]
lea edx, [esp + 0x58]
push dword [edx + 4]
push dword [edx]
call fcn.0047a450
mov dword [0x587001], 0x824
fld qword [0x590314]
sub esp, 8
fstp qword [esp]
call fcn.00479510
mov dword [0x587001], 0x825
mov dword [0x587001], 0x826
fld qword [esp + 0x50]
fstp qword [esp + 0x40]
mov dword [0x587001], 0x827
fld qword [esp + 0x58]
fstp qword [esp + 0x48]
mov dword [0x587001], 0x828
mov dword [0x587001], 0x829
inc dword [esp + 0x34]
jno 0x40eb56
mov dword [0x587001], 0x82a
call fcn.0047a520
mov dword [0x587001], 0x82b
mov dword [esp + 0xf8], 1
mov dword [0x587001], 0x82c
jmp 0x40ef7f
mov dword [0x587001], 0x82c
mov dword [0x587001], 0x82d
cmp dword [esp + 0x120], 0
je 0x40ef31
mov dword [0x587001], 0x82e
push 0
push 0x10
mov eax, 0x58ad24
push eax
mov eax, 0x58e55c
push eax
call fcn.0041123c
mov dword [0x587001], 0x82f
jmp 0x40ef60
mov dword [0x587001], 0x82f
mov dword [0x587001], 0x830
push 0
push 0x10
mov eax, 0x58b13e
push eax
mov eax, 0x58e55c
push eax
call fcn.0041123c
mov dword [0x587001], 0x831
mov dword [0x587001], 0x832
mov dword [esp + 0xf8], 0
mov dword [0x587001], 0x833
mov dword [0x587001], 0x834
push dword [esp + 0x14]
call fcn.0047c765
mov dword [0x587001], 0x835
push dword [esp + 0x18]
call fcn.0047c765
mov dword [0x587001], 0x837
mov eax, dword [esp + 0xf8]
jmp 0x40efce
push dword [esp + 0x30]
call fcn.0047d4b0
push dword [esp + 0x20]
call fcn.0047d4b0
add esp, 0x110
pop edi
pop ebx
ret 8