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

Disassembly:
mov al, byte [0xb5f851]
sub esp, 0xc8
test al, al
push ebx
push ebp
push esi
push edi
jne 0x700bd2
mov eax, dword [0xc97b24]
xor esi, esi
push esi
push 0xe
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push esi
push 8
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 1
push 6
call dword [edx + 0x20]
mov eax, dword [0xc97b24]
push 1
push 0xc
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 2
push 0xa
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 2
push 0xb
call dword [edx + 0x20]
mov eax, dword [0xc6aa78]
mov ecx, dword [eax]
mov edx, dword [0xc97b24]
push ecx
push 1
call dword [edx + 0x20]
add esp, 0x38
call fcn.0070cfb0
cmp dword [0xc3f0d0], esi
mov dword [esp + 0x54], esi
jle 0x700bc3
mov edi, edi
mov al, byte [esi + 0xc3f10d]
cmp al, 1
je 0x70037a
cmp al, 2
jne 0x700ba9
cmp al, 1
jne 0x7003fe
fld dword [0xc81300]
mov dword [esp + 0x28], 0x41100000
fst dword [esp + 0x3c]
fcomp dword [0x858b50]
fnstsw ax
test ah, 0x44
jnp 0x700ba9
mov al, byte [esi + 0xc3f10c]
cmp al, 1
jne 0x700856
fld dword [esi + 0xc3f0ec]
fmul dword [0x858ccc]
fld dword [esi + 0xc3f0f0]
fmul dword [0x858ccc]
fstp dword [esp + 0xa4]
fadd dword [esi + 0xc3f0e0]
fld dword [esp + 0xa4]
fadd dword [esi + 0xc3f0e4]
fstp dword [esp + 0x7c]
fcom dword [esi + 0xc3f0e0]
fnstsw ax
test ah, 5
jp 0x700410
mov eax, dword [esi + 0xc3f0e0]
fstp dword [esp + 0x38]
mov dword [esp + 0x30], eax
jmp 0x70041e
mov dword [esp + 0x3c], 0x3ecccccd
mov dword [esp + 0x28], 0x40400000
jmp 0x70039d
mov ecx, dword [esi + 0xc3f0e0]
fstp dword [esp + 0x30]
mov dword [esp + 0x38], ecx
fld dword [esp + 0x7c]
fcomp dword [esi + 0xc3f0e4]
fnstsw ax
test ah, 5
jp 0x70043b
fld dword [esp + 0x7c]
fld dword [esi + 0xc3f0e4]
jmp 0x700445
fld dword [esi + 0xc3f0e4]
fld dword [esp + 0x7c]
fld dword [esp + 0x38]
fsub dword [0x858c80]
fstp dword [esp + 0x38]
fld dword [esp + 0x30]
fadd dword [0x858c80]
fstp dword [esp + 0x30]
fxch st(1)
fsub dword [0x858c80]
fstp dword [esp + 0x14]
fadd dword [0x858c80]
fld dword [esp + 0x38]
call fcn.00821b40
movsx eax, ax
mov edx, eax
and edx, 0x80000003
jns 0x70048e
dec edx
or edx, 0xfffffffc
inc edx
fld dword [esp + 0x30]
sub eax, edx
mov ebx, eax
mov dword [esp + 0x1c], ebx
call fcn.00821b40
movsx eax, ax
lea edi, [eax + 4]
cmp ebx, edi
mov dword [esp + 0x40], edi
jg 0x700ba7
fld dword [esp + 0x14]
call fcn.00821b40
movsx eax, ax
mov ecx, eax
and ecx, 0x80000003
jns 0x7004cc
dec ecx
or ecx, 0xfffffffc
inc ecx
mov ebp, eax
sub ebp, ecx
mov dword [esp + 0x34], ebp
call fcn.00821b40
movsx eax, ax
add eax, 4
mov dword [esp + 0x44], eax
cmp ebp, eax
mov dword [esp + 0x18], ebp
jg 0x700842
sar ebx, 2
mov edx, ebp
sar edx, 2
xor dl, bl
and edx, 0xf
mov al, dl
test al, 1
mov dword [esp + 0x14], edx
je 0x700823
fild dword [esp + 0x1c]
mov di, dx
sar di, 1
fst dword [esp + 0x24]
fsub dword [esi + 0xc3f0e0]
fstp dword [esp + 0x20]
fild dword [esp + 0x18]
fst dword [esp + 0x18]
fsub dword [esi + 0xc3f0e4]
fstp dword [esp + 0x2c]
fld dword [esp + 0x20]
fmul dword [esi + 0xc3f0ec]
fld dword [esp + 0x2c]
fmul dword [esi + 0xc3f0f0]
faddp st(1)
fst dword [esp + 0x10]
fcomp dword [0x858b50]
fnstsw ax
test ah, 0x41
jne 0x700823
fld dword [esp + 0x10]
fcomp dword [0x858ccc]
fnstsw ax
test ah, 5
jp 0x700823
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
fld dword [esp + 0x20]
fmul dword [esp + 0x20]
faddp st(1)
fld dword [esp + 0x10]
fmul dword [esp + 0x10]
fsubp st(1)
fcomp dword [0x858fe8]
fnstsw ax
test ah, 5
jp 0x700823
fld dword [esi + 0xc3f0e8]
mov eax, dword [esp + 0x24]
fadd dword [0x85862c]
mov ecx, dword [esp + 0x18]
push 0
push 0
push 1
push 0
push 0
push 0
push 1
lea edx, [esp + 0xb8]
push edx
mov dword [esp + 0x78], eax
fstp dword [esp + 0x80]
fld dword [esp + 0x80]
lea eax, [esp + 0xcc]
fsub dword [0x858ba4]
push eax
push ecx
mov dword [esp + 0x84], ecx
lea ecx, [esp + 0x80]
fstp dword [esp]
push ecx
call fcn.005674e0
add esp, 0x2c
test al, al
je 0x700823
fld dword [esp + 0xb4]
fadd dword [0x859918]
fstp dword [esp + 0x60]
fld dword [esp + 0x24]
fsub dword [esi + 0xc3f0e0]
fstp dword [esp + 0x20]
fld dword [esp + 0x18]
fsub dword [esi + 0xc3f0e4]
fstp dword [esp + 0x2c]
fld dword [esp + 0x60]
fsub dword [esi + 0xc3f0e8]
fst dword [esp + 0x14]
fmul dword [esi + 0xc3f0f4]
fld dword [esp + 0x20]
fmul dword [esi + 0xc3f0ec]
faddp st(1)
fld dword [esp + 0x2c]
fmul dword [esi + 0xc3f0f0]
faddp st(1)
fst dword [esp + 0x10]
fcomp dword [0x858b50]
fnstsw ax
test ah, 0x41
jne 0x700823
fld dword [esp + 0x10]
fcomp dword [0x858ccc]
fnstsw ax
test ah, 5
jp 0x700823
fld dword [esp + 0x14]
fmul dword [esp + 0x14]
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
faddp st(1)
fld dword [esp + 0x20]
fmul dword [esp + 0x20]
faddp st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x10]
fmul dword [esp + 0x10]
fsubr dword [esp + 0x14]
fcom dword [0x858fe8]
fnstsw ax
test ah, 5
jp 0x700821
fsqrt
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x60]
push 1
mov dword [esp + 0x94], edx
push 1
lea edx, [esp + 0x74]
push edx
mov dword [esp + 0xa0], eax
lea eax, [esp + 0x70]
mov dword [esp + 0xa4], ecx
push eax
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0xa4]
push edx
fld dword [esp + 0x28]
fmul dword [0x85f0fc]
fld dword [esp + 0x2c]
fsqrt
fdivr dword [esp + 0x28]
fmul dword [esp + 0x54]
fmul dword [0x858b40]
fld st(1)
fmul st(2)
fsubr dword [0x858624]
fmulp st(1)
fld st(2)
fmul dword [0x858cc4]
fxch st(3)
fmul dword [0x858cc4]
fmulp st(3)
fxch st(2)
fsubr dword [0x858624]
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x28]
fstp st(0)
call fcn.0070ce30
add esp, 0x18
test al, al
je 0x700823
mov eax, dword [0xb7cb84]
and eax, 0x1fff
test eax, eax
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
movsx edi, di
push 0xff
jge 0x70078e
fadd qword [0x872618]
fmul qword [0x872610]
sub esp, 8
fstp dword [esp + 4]
fld dword [0x858624]
fdiv dword [esp + 0x5c]
fstp dword [esp]
fld dword [esp + 0x1c]
call fcn.00821b40
fld dword [esp + 0x1c]
fmul dword [esi + 0xc3f104]
push eax
call fcn.00821b40
fld dword [esp + 0x20]
fmul dword [esi + 0xc3f100]
push eax
call fcn.00821b40
fld dword [esp + 0x24]
fmul dword [esi + 0xc3f0fc]
push eax
call fcn.00821b40
fld dword [esp + 0x84]
fmul dword [edi*4 + 0x8d5068]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
push eax
mov eax, dword [esp + 0x64]
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x88]
fmul dword [edi*4 + 0x8d5068]
fstp dword [esp]
push ecx
push edx
push eax
call fcn.0070e780
add esp, 0x30
jmp 0x700823
fstp st(0)
mov eax, dword [esp + 0x44]
add ebp, 4
cmp ebp, eax
mov dword [esp + 0x18], ebp
jle 0x7004f2
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x40]
mov ebp, dword [esp + 0x34]
add ebx, 4
cmp ebx, edi
mov dword [esp + 0x1c], ebx
jle 0x7004e3
jmp 0x700ba9
test al, al
je 0x700866
cmp al, 4
je 0x700866
cmp al, 3
jne 0x700ba9
lea ecx, [esp + 0x68]
push ecx
lea edi, [esi + 0xc3f0e0]
sub esp, 0xc
mov edx, edi
mov ecx, dword [edx]
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
call fcn.006ffff0
add esp, 0x10
test al, al
je 0x700ba9
fld dword [edi]
fsub dword [esp + 0x28]
fld dword [esp + 0x28]
fadd dword [edi]
fstp dword [esp + 0x30]
fld dword [esi + 0xc3f0e4]
fsub dword [esp + 0x28]
fstp dword [esp + 0x14]
fld dword [esp + 0x28]
fadd dword [esi + 0xc3f0e4]
fstp dword [esp + 0x34]
call fcn.00821b40
movsx eax, ax
mov ecx, eax
and ecx, 0x80000001
jns 0x7008db
dec ecx
or ecx, 0xfffffffe
inc ecx
fld dword [esp + 0x30]
sub eax, ecx
mov edi, eax
mov dword [esp + 0x24], edi
call fcn.00821b40
movsx eax, ax
lea ebp, [eax + 2]
cmp edi, ebp
mov dword [esp + 0x20], ebp
jg 0x700ba9
fld dword [esp + 0x14]
call fcn.00821b40
movsx eax, ax
mov edx, eax
and edx, 0x80000001
jns 0x700919
dec edx
or edx, 0xfffffffe
inc edx
fld dword [esp + 0x34]
mov ebx, eax
sub ebx, edx
mov dword [esp + 0x44], ebx
call fcn.00821b40
movsx eax, ax
add eax, 2
mov dword [esp + 0x40], eax
cmp ebx, eax
mov dword [esp + 0x14], ebx
jg 0x700b96
mov eax, edi
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
mov dword [esp + 0x34], ecx
jmp 0x700953
mov ecx, dword [esp + 0x34]
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
xor al, cl
and eax, 0xf
test al, 1
mov dword [esp + 0x1c], eax
je 0x700b77
fild dword [esp + 0x14]
mov bp, ax
sar bp, 1
fld st(0)
fsub dword [esi + 0xc3f0e4]
fild dword [esp + 0x24]
fst dword [esp + 0x18]
fsub dword [esi + 0xc3f0e0]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fst dword [esp + 0x14]
fcomp dword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x700b75
mov eax, dword [0xb6f03c]
test eax, eax
je 0x7009c2
add eax, 0x30
mov edi, eax
mov edx, eax
mov ecx, eax
jmp 0x7009cd
mov eax, 0xb6f02c
mov edi, eax
mov edx, eax
mov ecx, eax
fld st(0)
fsub dword [ecx + 4]
fld st(1)
fsub dword [edx + 4]
fmulp st(1)
fld dword [esp + 0x18]
fsub dword [eax]
fld dword [esp + 0x18]
fsub dword [edi]
fmulp st(1)
faddp st(1)
fsqrt
fst dword [esp + 0x1c]
fcomp dword [0x858b48]
fnstsw ax
test ah, 5
jp 0x700b75
fld dword [esp + 0x1c]
fcomp dword [0x87260c]
fnstsw ax
test ah, 5
jp 0x700a19
fld dword [0x858624]
jmp 0x700a2f
fld dword [esp + 0x1c]
fsub dword [0x87260c]
fmul dword [0x872608]
fsubr dword [0x858624]
fld dword [0x858624]
mov eax, dword [esp + 0x18]
fdiv dword [esp + 0x28]
push 1
push 1
lea ecx, [esp + 0x7c]
push ecx
lea edx, [esp + 0x7c]
mov dword [esp + 0x90], eax
push edx
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x98]
push ecx
fmul dword [esp + 0x2c]
fld st(0)
fmul st(1)
fsubr dword [0x858624]
fmul st(2)
fmul dword [esp + 0x54]
fmul dword [0x8652f8]
fstp dword [esp + 0x28]
fstp st(0)
fstp st(0)
fstp dword [esp + 0xa0]
fld dword [esp + 0x80]
fadd dword [0x858fa8]
fstp dword [esp + 0xa4]
call fcn.0070ce30
add esp, 0x18
test al, al
je 0x700b77
mov ecx, dword [0xb7cb84]
movsx edi, bp
mov edx, edi
imul edx, edx, 0x8fc
add edx, ecx
and edx, 0x7fff
test edx, edx
mov dword [esp + 0x1c], edx
push 0xff
fild dword [esp + 0x20]
jge 0x700adc
fadd qword [0x872618]
fmul qword [0x872600]
sub esp, 8
fstp dword [esp + 4]
fld dword [0x858624]
fdiv dword [esp + 0x5c]
fstp dword [esp]
fld dword [esp + 0x1c]
call fcn.00821b40
fld dword [esp + 0x1c]
fmul dword [esi + 0xc3f104]
push eax
call fcn.00821b40
fld dword [esp + 0x20]
fmul dword [esi + 0xc3f100]
push eax
call fcn.00821b40
fld dword [esp + 0x24]
fmul dword [esi + 0xc3f0fc]
push eax
call fcn.00821b40
fld dword [esp + 0x8c]
fmul dword [edi*4 + 0x8d5068]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
fmul dword [0x858cb0]
push eax
mov eax, dword [esp + 0x6c]
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x94]
fmul dword [edi*4 + 0x8d5068]
fstp dword [esp]
push eax
push ecx
push edx
call fcn.0070e780
add esp, 0x30
jmp 0x700b77
fstp st(0)
mov eax, dword [esp + 0x40]
add ebx, 2
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x70094f
mov ebx, dword [esp + 0x44]
mov edi, dword [esp + 0x24]
mov ebp, dword [esp + 0x20]
add edi, 2
cmp edi, ebp
mov dword [esp + 0x24], edi
jle 0x700934
jmp 0x700ba9
fstp st(0)
mov eax, dword [esp + 0x54]
mov ecx, dword [0xc3f0d0]
inc eax
add esi, 0x30
cmp eax, ecx
mov dword [esp + 0x54], eax
jl 0x700360
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc8
jmp fcn.0070cf20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc8
ret