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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x77c9a5
mov eax, dword fs:[0]
push eax
sub esp, 0x328
push ebx
push esi
push edi
mov eax, dword [0x867e6c]
xor eax, esp
push eax
lea eax, [esp + 0x338]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x20fc]
mov eax, dword [eax + 0x224]
cmp eax, 0x44
jl 0x70093d
mov eax, 0xf4
lea ecx, [edi + 0x12c]
mov edx, 8
jmp 0x700920
mov esi, dword [edi + 0x2004]
mov esi, dword [eax + esi]
mov dword [ecx], esi
add eax, 4
add ecx, 0x7c
sub edx, 1
jne 0x700920
cmp eax, 0x1f4
jl 0x700911
mov eax, dword [edi + 0x201c]
lea esi, [edi + 0x200c]
mov dword [esp + 0xbc], esi
mov dword [esp + 0x64], eax
cmp dword [esi + 0xc], eax
jbe 0x70095e
call fcn.006441b7
mov ebx, dword [esi + 0xc]
mov ecx, dword [esi]
mov dword [esp + 0xb4], ecx
cmp ebx, dword [esi + 0x10]
jbe 0x700974
call fcn.006441b7
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0xb4]
mov eax, dword [esi]
push edx
push ecx
push ebx
push eax
lea ebx, [esp + 0xc4]
call fcn.0042d120
mov edx, dword [edi + 0x2028]
mov eax, dword [edi + 0x202c]
mov ecx, dword [edi + 0x2030]
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
mov dword [esp + 0x60], 0
lea ebx, [edi + 0xf4]
mov dword [esp + 0x58], 0
mov dword [esp + 0x64], ebx
cmp dword [edi + 0xc4], 7
lea eax, [ebx - 0x2c]
mov dword [esp + 0xcc], eax
mov dword [esp + 0x68], eax
mov eax, dword [ebx + 0x38]
mov edx, dword [eax + 0x220]
mov dword [esp + 0x5c], edx
jne 0x700d6a
cmp byte [ebx + 0x4c], 0
je 0x701242
mov ecx, dword [edi + 0x20fc]
mov ecx, dword [ecx + 0x224]
cmp ecx, dword [ebx + 0x40]
jl 0x700d6a
fld qword [0x7a8008]
sub esp, 8
add eax, 0x90
fstp qword [esp]
call fcn.00435d30
mov byte [ebx + 0x4c], 0
mov edx, dword [0x881180]
mov ecx, dword [0x881e28]
mov eax, dword [0x882980]
mov dword [esp + 0x128], edx
mov edx, dword [0x881158]
mov dword [esp + 0x12c], eax
mov eax, dword [0x8807f8]
mov dword [esp + 0x130], ecx
mov ecx, dword [0x881f2c]
mov dword [esp + 0x134], edx
mov edx, dword [0x882e0c]
mov dword [esp + 0x138], eax
mov eax, dword [0x882684]
mov dword [esp + 0x13c], ecx
mov ecx, dword [0x8810f0]
mov dword [esp + 0x140], edx
mov edx, dword [0x881484]
mov dword [esp + 0x144], eax
mov eax, dword [0x881514]
mov dword [esp + 0x148], ecx
mov ecx, dword [0x880f60]
mov dword [esp + 0x14c], edx
mov edx, dword [0x882450]
mov dword [esp + 0x150], eax
mov eax, dword [0x880a3c]
mov dword [esp + 0x154], ecx
mov ecx, dword [edi + 0x2004]
mov dword [esp + 0x158], edx
mov edx, dword [ecx]
mov dword [esp + 0x15c], eax
mov eax, dword [edx + 0x218]
call eax
xor edx, edx
cmp eax, 1
mov eax, dword [edi + 0x2418]
lea ecx, [edx + 7]
jne 0x700b15
div ecx
mov esi, dword [0x8824f0]
mov edx, dword [esp + edx*4 + 0x144]
jmp 0x700b24
div ecx
mov esi, dword [0x881648]
mov edx, dword [esp + edx*4 + 0x128]
mov dword [esp + 0x54], eax
mov eax, dword [edi + 0x20fc]
cmp dword [eax + 0x224], 0x10e
jle 0x700b83
mov ecx, dword [edi + 0xb8]
sub ecx, dword [edi + 0x241c]
cmp ecx, 2
jle 0x700b83
fild dword [esp + 0x54]
mov eax, dword [0x88b12c]
sub esp, 0x10
fadd qword [0x82dc20]
fstp qword [esp + 8]
fld qword [0x7a8008]
fstp qword [esp]
push 0
call fcn.007488f0
mov edx, dword [edi + 0xb8]
inc dword [edi + 0x2418]
mov dword [edi + 0x241c], edx
push 0x1c8
call fcn.006442a0
add esp, 4
mov dword [esp + 0x4c], eax
xor ecx, ecx
mov dword [esp + 0x340], ecx
cmp eax, ecx
je 0x700bb0
push esi
push eax
call fcn.00708fb0
mov esi, eax
mov dword [esp + 0x50], esi
jmp 0x700bb6
mov dword [esp + 0x50], ecx
mov esi, ecx
cmp dword [esp + 0x5c], 0
mov dword [esp + 0x340], 0xffffffff
jl 0x700cab
mov esi, dword [esi + 0x1c0]
xor edi, edi
call fcn.0056ad30
test eax, eax
je 0x700c0e
mov esi, eax
call fcn.00560ee0
test eax, eax
je 0x700c0e
mov ecx, dword [esp + 0x5c]
shl ecx, 4
add ecx, 0x88b6c0
mov edx, dword [ecx]
sub eax, 0xffffff80
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [esp + 0x50]
mov esi, dword [edx + 0x1c0]
xor edi, edi
call fcn.0056ad30
test eax, eax
je 0x700c59
mov edi, 1
mov esi, eax
call fcn.00560ee0
test eax, eax
je 0x700c59
mov ecx, dword [esp + 0x5c]
shl ecx, 4
add ecx, 0x88b6c0
mov edx, dword [ecx]
sub eax, 0xffffff80
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [esp + 0x50]
mov esi, dword [edx + 0x1c0]
xor edi, edi
call fcn.0056ad30
test eax, eax
je 0x700ca4
mov edi, 2
mov esi, eax
call fcn.00560ee0
test eax, eax
je 0x700ca4
mov ecx, dword [esp + 0x5c]
shl ecx, 4
add ecx, 0x88b6c0
mov edx, dword [ecx]
sub eax, 0xffffff80
mov dword [eax], edx
mov edx, dword [ecx + 4]
mov dword [eax + 4], edx
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0xc], ecx
mov esi, dword [esp + 0x50]
mov edi, dword [ebp + 8]
mov ebx, dword [ebx + 0x38]
mov edx, dword [ebx + 4]
mov dword [esi + 0x28], edx
inc dword [esi + 0x1b4]
mov eax, dword [ebx + 0x620]
add ebx, 0x614
mov dword [esp + 0x4c], esi
test eax, eax
jne 0x700cd2
xor ecx, ecx
jmp 0x700cda
mov ecx, dword [ebx + 0x14]
sub ecx, eax
sar ecx, 2
mov edx, dword [ebx + 0x10]
mov dword [esp + 0x54], edx
sub edx, eax
sar edx, 2
cmp edx, ecx
jae 0x700cf8
mov eax, dword [esp + 0x54]
mov dword [eax], esi
add eax, 4
mov dword [ebx + 0x10], eax
jmp 0x700d1f
cmp eax, dword [esp + 0x54]
jbe 0x700d03
call fcn.006441b7
mov ecx, dword [esp + 0x54]
mov eax, dword [ebx]
push ecx
push eax
lea edx, [esp + 0x54]
push edx
lea eax, [esp + 0x178]
push eax
mov eax, ebx
call fcn.004224c0
mov ecx, dword [edi + 0x2004]
mov eax, dword [ecx + 0x12bc]
mov edx, dword [esi + 8]
mov dword [esp + 0x4c], eax
mov dword [esp + 0xb8], esi
add eax, 0xbc
lea ebx, [esp + 0xb4]
lea esi, [esp + 0x1b8]
mov dword [esp + 0xb4], edx
call fcn.00418740
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x64]
mov dword [eax + 0x1b8], ecx
cmp byte [ebx + 0x4c], 0
je 0x701242
mov edi, dword [edi + 0x20fc]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x60]
lea esi, [esp + 0xd0]
mov edx, edi
mov dword [esp + 0x4c], edi
call fcn.006ff5c0
mov esi, dword [esp + 0x4c]
mov edx, dword [esp + 0x58]
mov edi, dword [esp + 0x60]
lea eax, [esp + 0xdc]
mov ecx, esi
call fcn.006ff300
mov edx, dword [esp + 0x58]
lea eax, [esp + 0x6c]
mov ecx, esi
call fcn.006ff1a0
fldz
fst dword [esp + 0x78]
push ecx
fst dword [esp + 0x80]
lea esi, [esp + 0x88]
fst dword [esp + 0x84]
fld1
fst dword [esp + 0x88]
fst dword [esp + 0x98]
fst dword [esp + 0xa8]
fst dword [esp + 0xac]
fst dword [esp + 0xb0]
fstp dword [esp + 0xb4]
fst dword [esp + 0x8c]
fst dword [esp + 0x90]
fst dword [esp + 0x94]
fst dword [esp + 0x9c]
fst dword [esp + 0xa0]
fstp dword [esp + 0xa4]
fld dword [esp + 0xd4]
fstp dword [esp]
call fcn.0041a4c0
fld dword [esp + 0xd4]
push ecx
fstp dword [esp]
call fcn.0041a570
fld dword [esp + 0xd8]
push ecx
fstp dword [esp]
call fcn.0041a620
mov eax, dword [esp + 0x5c]
test eax, eax
jl 0x700e91
fld dword [eax*4 + 0x87d230]
fstp dword [esp + 0x4c]
fld dword [esp + 0x4c]
fld st(0)
fmul dword [esp + 0x6c]
fstp dword [esp + 0x6c]
fld st(0)
fmul dword [esp + 0x70]
fstp dword [esp + 0x70]
fmul dword [esp + 0x74]
fstp dword [esp + 0x74]
fld dword [esp + 0x74]
lea esi, [ebx - 0x20]
fchs
mov edx, dword [ebp + 8]
fstp dword [esp + 0x168]
fld dword [esp + 0x6c]
fmul dword [esp + 0xa8]
fstp dword [esp + 0xa8]
fld dword [esp + 0x70]
fmul dword [esp + 0xac]
fstp dword [esp + 0xac]
fld dword [esp + 0x168]
fmul dword [esp + 0xb0]
fstp dword [esp + 0xb0]
fld dword [esp + 0x78]
fld dword [esp + 0xdc]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x78]
fld dword [esp + 0x7c]
fld dword [esp + 0xe0]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x7c]
fld dword [esp + 0x80]
fld dword [esp + 0xe4]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x80]
fld dword [esp + 0x78]
fstp dword [esi]
fld dword [esp + 0x7c]
fstp dword [ebx - 0x1c]
fld dword [esp + 0x80]
fstp dword [ebx - 0x18]
fld dword [esp + 0x84]
fstp dword [ebx - 0x14]
fld dword [esp + 0x88]
fstp dword [ebx - 0x10]
fld dword [esp + 0x8c]
fstp dword [ebx - 0xc]
fld dword [esp + 0x90]
fstp dword [ebx - 8]
fld dword [esp + 0x94]
fstp dword [ebx - 4]
fld dword [esp + 0x98]
fstp dword [ebx]
fld dword [esp + 0x9c]
fstp dword [ebx + 4]
fld dword [esp + 0xa0]
fstp dword [ebx + 8]
fld dword [esp + 0xa4]
fstp dword [ebx + 0xc]
fld dword [esp + 0xa8]
fstp dword [ebx + 0x10]
fld dword [esp + 0xac]
fstp dword [ebx + 0x14]
fld dword [esp + 0xb0]
fstp dword [ebx + 0x18]
fxch st(2)
fstp dword [ebx + 0x1c]
fstp dword [ebx + 0x20]
fstp dword [ebx + 0x24]
mov eax, dword [edx + 0x2028]
mov ecx, dword [edx + 0x202c]
mov dword [esp + 0xe8], eax
mov eax, dword [edx + 0x2030]
mov dword [esp + 0xec], ecx
mov ecx, dword [edx + 0x2034]
mov dword [esp + 0xf0], eax
mov eax, dword [edx + 0x2038]
mov dword [esp + 0xf4], ecx
mov ecx, dword [edx + 0x203c]
mov dword [esp + 0xf8], eax
mov eax, dword [edx + 0x2040]
mov dword [esp + 0xfc], ecx
mov ecx, dword [edx + 0x2044]
mov dword [esp + 0x100], eax
mov eax, dword [edx + 0x2048]
mov dword [esp + 0x108], eax
mov eax, dword [edx + 0x2050]
mov dword [esp + 0x104], ecx
mov ecx, dword [edx + 0x204c]
mov dword [esp + 0x110], eax
mov eax, dword [edx + 0x2058]
mov dword [esp + 0x10c], ecx
mov ecx, dword [edx + 0x2054]
mov dword [esp + 0x118], eax
mov eax, dword [edx + 0x2060]
mov dword [esp + 0x120], eax
fld dword [esp + 0x120]
mov dword [esp + 0x114], ecx
fchs
mov ecx, dword [edx + 0x205c]
fstp dword [esp + 0x120]
mov dword [esp + 0x11c], ecx
lea eax, [esp + 0x284]
lea ecx, [esp + 0xe8]
call fcn.00594e60
lea ecx, [edx + 0x2024]
mov edx, dword [ecx]
mov edx, dword [edx]
lea eax, [esp + 0x204]
push eax
call edx
lea ecx, [esp + 0x244]
mov eax, esi
call fcn.00594fb0
lea eax, [esp + 0x204]
push eax
lea eax, [esp + 0xec]
lea edx, [esp + 0x288]
call fcn.0057e2c0
push eax
lea eax, [esp + 0x2c8]
lea edx, [esp + 0x248]
call fcn.0057e2c0
mov esi, eax
mov ecx, 0x10
lea edi, [esp + 0x1c4]
rep movsd dword es:[edi], dword [esi]
fld dword [esp + 0x1f4]
fstp dword [ebx + 0x28]
fld dword [esp + 0x1f8]
fstp dword [ebx + 0x2c]
fld dword [esp + 0x1fc]
fst dword [ebx + 0x30]
fld dword [esp + 0x200]
fdivr qword [0x7a8008]
fstp dword [esp + 0x4c]
fld dword [ebx + 0x28]
fld dword [esp + 0x4c]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [ebx + 0x28]
fld st(0)
fmul dword [ebx + 0x2c]
fstp dword [ebx + 0x2c]
fmul dword [ebx + 0x30]
fstp dword [ebx + 0x30]
fcom qword [0x82e068]
fnstsw ax
test ah, 5
jp 0x701166
fstp st(0)
fld dword [0x82e27c]
jmp 0x70116c
fdivr qword [0x82e568]
fstp dword [ebx + 0x34]
fld dword [esp + 0x17c]
fsub dword [esp + 0x78]
fstp dword [esp + 0xc0]
fld dword [esp + 0x180]
fsub dword [esp + 0x7c]
fstp dword [esp + 0xc4]
fld dword [esp + 0x184]
fsub dword [esp + 0x80]
fstp dword [esp + 0xc8]
fld dword [esp + 0xc4]
fld dword [esp + 0xc0]
fld dword [esp + 0xc8]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
fstp dword [esp + 0x4c]
fld dword [esp + 0x4c]
call fcn.0076fa50
fstp dword [esp + 0x4c]
fld dword [esp + 0x4c]
mov esi, dword [esp + 0xbc]
fstp dword [ebx + 0x3c]
mov ecx, dword [esi + 0xc]
test ecx, ecx
jne 0x7011f7
xor eax, eax
jmp 0x7011ff
mov eax, dword [esi + 0x14]
sub eax, ecx
sar eax, 2
mov edi, dword [esi + 0x10]
mov edx, edi
sub edx, ecx
sar edx, 2
cmp edx, eax
jae 0x70121e
mov eax, dword [esp + 0xcc]
mov dword [edi], eax
add edi, 4
mov dword [esi + 0x10], edi
jmp 0x70123f
cmp ecx, edi
jbe 0x701227
call fcn.006441b7
mov eax, dword [esi]
push edi
push eax
lea ecx, [esp + 0x70]
push ecx
lea edx, [esp + 0x180]
push edx
mov eax, esi
call fcn.004224c0
mov edi, dword [ebp + 8]
mov eax, dword [esp + 0x58]
inc eax
add ebx, 0x7c
cmp eax, 8
mov dword [esp + 0x58], eax
mov dword [esp + 0x64], ebx
jl 0x7009d2
mov eax, dword [esp + 0x60]
inc eax
cmp eax, 8
mov dword [esp + 0x60], eax
jl 0x7009c6
mov esi, dword [esp + 0xbc]
mov eax, dword [esi + 0x10]
mov dword [esp + 0x68], eax
cmp dword [esi + 0xc], eax
jbe 0x701285
call fcn.006441b7
mov ebx, dword [esi + 0xc]
mov edi, dword [esi]
cmp ebx, dword [esi + 0x10]
jbe 0x701294
call fcn.006441b7
mov esi, dword [esi]
test edi, edi
je 0x70129e
cmp edi, esi
je 0x7012a3
call fcn.006441b7
mov eax, dword [esp + 0x68]
mov ecx, eax
sub ecx, ebx
push 0x6fee00
sar ecx, 2
push ecx
push eax
push ebx
call fcn.0041abd0
add esp, 0x10
mov ecx, dword [esp + 0x338]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4