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

Disassembly:
sub esp, 0x68
call fcn.0053c4a0
test al, al
je 0x71463d
mov eax, dword [0xc97b24]
push ebx
push ebp
push esi
push edi
push 0
push 8
mov byte [0xc3e030], 0
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 0
push 6
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 1
push 0xc
call dword [edx + 0x20]
mov eax, dword [0xc97b24]
push 2
push 0xa
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 2
push 0xb
call dword [ecx + 0x20]
add esp, 0x28
call fcn.0070cfb0
mov bl, byte [0xb70153]
movzx eax, byte [0xb70152]
movzx ecx, word [0xb70150]
movzx edx, bl
imul edx, edx, 0x3c
add edx, eax
mov dword [esp + 0x1c], edx
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
fmul dword [0x859044]
faddp st(1)
fsub dword [0x863994]
fcom dword [0x858b50]
fnstsw ax
test ah, 5
jp 0x7139fb
fchs
call fcn.00821b40
cmp eax, 0xdc
jge 0x713d2a
fld dword [0xc81304]
mov edx, 0xdc
fcomp dword [0xc81300]
sub edx, eax
mov dword [esp + 0x18], edx
fnstsw ax
test ah, 0x41
jne 0x713a31
fld dword [0xc81304]
jmp 0x713a37
fld dword [0xc81300]
fld dword [0x858624]
fsub st(1)
fimul dword [esp + 0x18]
call fcn.00821b40
fstp st(0)
mov esi, eax
test esi, esi
mov dword [esp + 0x18], esi
jle 0x713d2a
mov eax, dword [0xb6f03c]
test eax, eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0xc2c80000
mov dword [esp + 0x44], 0x41700000
je 0x713a7e
add eax, 0x30
jmp 0x713a83
mov eax, 0xb6f02c
mov ecx, dword [eax]
mov dword [esp + 0x3c], ecx
fld dword [eax + 4]
fsub dword [0x858628]
push 1
push 0
lea edx, [esp + 0x18]
fstp dword [esp + 0x48]
push edx
fld dword [eax + 8]
lea eax, [esp + 0x20]
fadd dword [0x858b48]
push eax
lea ecx, [esp + 0x34]
push ecx
lea edx, [esp + 0x50]
fstp dword [esp + 0x58]
push edx
call fcn.0070ce30
add esp, 0x18
test al, al
je 0x713d24
movzx eax, byte [0xb70154]
mov ecx, dword [0xc97b24]
mov dword [esp + 0x1c], eax
push 0
push 1
fild dword [esp + 0x24]
fmul dword [0x87287c]
fstp dword [esp + 0x28]
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 5
push 0xa
call dword [edx + 0x20]
mov eax, dword [0xc97b24]
push 2
push 0xb
call dword [eax + 0x20]
fild dword [0x8d4b60]
mov ecx, dword [0x8d4b60]
add esp, 0x18
test ecx, ecx
jge 0x713b23
fadd dword [0x858c54]
fadd st(0), st(0)
push 0
mov edx, dword [0xc3ef9c]
push 0
fadd dword [0x858b90]
mov eax, dword [esp + 0x30]
fld dword [0x858624]
push 0xff
fdiv dword [0xc3ef9c]
push ecx
mov ecx, dword [esp + 0x34]
fstp dword [esp]
fld dword [esp + 0x20]
push 0xff
fmul st(1)
push 0
push 0
push 0
sub esp, 8
fstp dword [esp + 4]
fmul dword [esp + 0x3c]
fstp dword [esp]
push edx
push eax
push ecx
call fcn.0070d000
mov edx, dword [0xc6aa74]
mov eax, dword [edx]
mov ecx, dword [0xc97b24]
push eax
push 1
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 5
push 0xa
call dword [edx + 0x20]
mov eax, dword [0xc97b24]
add esp, 0x44
push 2
push 0xb
call dword [eax + 0x20]
fild dword [0x8d4b60]
mov ecx, dword [0x8d4b60]
add esp, 8
test ecx, ecx
jge 0x713bc2
fadd dword [0x858c54]
fadd st(0), st(0)
push 0
push 0
push 0xff
fadd dword [0x858b90]
push ecx
fld dword [esp + 0x20]
mov edx, dword [0xc3ef9c]
fmul st(1)
fxch st(1)
fmul dword [esp + 0x24]
fstp dword [esp + 0x2c]
fld dword [0x858624]
fdiv dword [0xc3ef9c]
fstp dword [esp]
fld dword [0x859b58]
fmul st(1)
push 0
push 0
push 0
push 0
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x44]
fmul dword [0x859b58]
fstp dword [esp]
push edx
sub esp, 8
fmul dword [0x872838]
fadd dword [esp + 0x5c]
fstp dword [esp + 4]
fld dword [esp + 0x50]
fmul dword [0x858c50]
fld dword [esp + 0x54]
fsub dword [0x858b8c]
fmulp st(1)
fadd dword [esp + 0x58]
fstp dword [esp]
call fcn.0070d000
mov eax, dword [0xc97b24]
push 7
push 0xa
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 2
push 0xb
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
add esp, 0x44
push 0
push 8
call dword [edx + 0x20]
mov eax, dword [0xc3e008]
mov ecx, dword [eax]
mov edx, dword [0xc97b24]
push ecx
push 1
call dword [edx + 0x20]
fild dword [0x8d4b60]
mov eax, dword [0x8d4b60]
add esp, 0x10
test eax, eax
jge 0x713ca5
fadd dword [0x858c54]
fadd st(0), st(0)
push 0
push 0
push 0xff
fadd dword [0x858b90]
push ecx
fld dword [0x858624]
fdiv dword [0xc3ef9c]
fstp dword [esp]
fild dword [esp + 0x28]
push 0xff
fmul dword [0x862e1c]
call fcn.00821b40
fld dword [esp + 0x24]
mov ecx, dword [0xc3ef9c]
fmul st(1)
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x3c]
push esi
push esi
sub esp, 8
fstp dword [esp + 4]
fmul dword [esp + 0x3c]
fstp dword [esp]
push ecx
push edx
push eax
call fcn.0070d000
mov ecx, dword [0xc97b24]
push 2
push 0xa
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 2
push 0xb
call dword [edx + 0x20]
add esp, 0x44
mov bl, byte [0xb70153]
cmp bl, 0x16
jae 0x713d3b
cmp bl, 5
ja 0x71401e
cmp bl, 0x16
ja 0x713d9e
cmp bl, 5
jb 0x713d9e
cmp bl, 0x16
mov eax, 0x88888889
jne 0x713d8e
movzx ecx, byte [0xb70152]
imul ecx, ecx, 0xff
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
test edx, edx
mov dword [esp + 0x18], edx
je 0x71401e
fld dword [0xc81304]
fcomp dword [0xc81300]
fnstsw ax
test ah, 0x41
jne 0x713da8
fld dword [0xc81304]
jmp 0x713dae
movzx edx, byte [0xb70152]
mov ecx, 0x3c
sub ecx, edx
jmp 0x713d53
mov dword [esp + 0x18], 0xff
jmp 0x713d73
fld dword [0xc81300]
fld dword [0x858624]
fsub st(1)
fimul dword [esp + 0x18]
call fcn.00821b40
fstp st(0)
mov ecx, dword [0xc3e000]
mov edx, dword [ecx]
push edx
mov dword [esp + 0x1c], eax
mov eax, dword [0xc97b24]
push 1
call dword [eax + 0x20]
add esp, 8
xor edi, edi
lea ecx, [ecx]
cmp edi, 9
mov dword [esp + 0x30], 0x42c80000
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0x41200000
jl 0x713e05
mov dword [esp + 0x30], 0xc2c80000
mov eax, dword [0xb6f03c]
test eax, eax
je 0x713e13
add eax, 0x30
jmp 0x713e18
mov eax, 0xb6f02c
fld dword [esp + 0x30]
push 1
fadd dword [eax]
push 0
fstp dword [esp + 0x38]
mov ecx, dword [eax + 4]
mov dword [esp + 0x3c], ecx
fld dword [eax + 8]
mov eax, edi
fadd dword [0x85862c]
cdq
mov ecx, 9
idiv ecx
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x2c]
mov esi, edx
shl esi, 2
fld dword [esi + 0x8d55ec]
lea edx, [esp + 0x18]
fmul dword [0x85991c]
push edx
push eax
push ecx
fsubr dword [esp + 0x48]
lea edx, [esp + 0x44]
push edx
fstp dword [esp + 0x4c]
fld dword [esi + 0x8d5610]
fmul dword [0x858a14]
fadd st(1)
fstp dword [esp + 0x50]
fstp st(0)
call fcn.0070ce30
add esp, 0x18
test al, al
je 0x713f17
fld dword [0x858624]
fdiv dword [esp + 0x2c]
fstp dword [esp + 0x1c]
call fcn.00821b1e
and eax, 0x1f
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fmul dword [0x859f00]
fsubr dword [0x858624]
fimul dword [esp + 0x18]
call fcn.00821b40
fld dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
fmul dword [esi + 0x8d5634]
mov edx, dword [esp + 0x2c]
push 0xff
fmul dword [0x858c98]
push ecx
mov ecx, dword [esp + 0x2c]
push 0xff
push eax
push eax
push eax
mov eax, dword [esp + 0x40]
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x34]
fmul dword [esi + 0x8d5634]
fmul dword [0x858c98]
fstp dword [esp]
push edx
push eax
push ecx
call fcn.0070e4a0
add esp, 0x2c
inc edi
cmp edi, 0xb
jl 0x713de0
mov eax, dword [0xb6f03c]
test eax, eax
mov dword [esp + 0x3c], 0x42c80000
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0x41200000
je 0x713f47
add eax, 0x30
jmp 0x713f4c
mov eax, 0xb6f02c
fld dword [eax]
fadd dword [0x858628]
fstp dword [esp + 0x3c]
mov edx, dword [eax + 4]
mov dword [esp + 0x40], edx
fld dword [eax + 8]
fadd dword [0x85862c]
fstp dword [esp + 0x44]
fld dword [esp + 0x40]
fsub dword [0x85991c]
fstp dword [esp + 0x40]
call fcn.00821b1e
and eax, 0x7f
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fmul dword [0x859520]
fadd dword [0x858b8c]
fimul dword [esp + 0x18]
call fcn.00821b40
push 1
mov esi, eax
push 0
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x50]
push eax
call fcn.0070ce30
add esp, 0x18
test al, al
je 0x714019
fld dword [0x858624]
push 0
fdiv dword [esp + 0x30]
push 0
mov edx, dword [esp + 0x30]
push 0xff
push ecx
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
fstp dword [esp]
fld dword [esp + 0x20]
push 0xff
fmul dword [0x858c80]
push esi
push esi
push esi
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x3c]
fmul dword [0x858c80]
fstp dword [esp]
push ecx
push edx
push eax
call fcn.0070d000
add esp, 0x34
call fcn.0070cf20
fld dword [0xc81300]
fcomp dword [0xc81304]
fnstsw ax
test ah, 0x41
jne 0x714039
fld dword [0xc81300]
jmp 0x71403f
fld dword [0xc81304]
fld dword [0xc812f8]
fcomp st(1)
fnstsw ax
fstp st(0)
test ah, 0x41
jne 0x714058
fld dword [0xc812f8]
jmp 0x714079
fld dword [0xc81300]
fcomp dword [0xc81304]
fnstsw ax
test ah, 0x41
jne 0x714073
fld dword [0xc81300]
jmp 0x714079
fld dword [0xc81304]
movzx ecx, word [0xb7c4fc]
fsubr dword [0x858624]
mov dword [esp + 0x20], ecx
fild dword [esp + 0x20]
fmul st(1)
call fcn.00821b40
movzx edx, word [0xb7c4fe]
mov dword [esp + 0x20], edx
mov byte [esp + 0x1c], al
fild dword [esp + 0x20]
fmul st(1)
call fcn.00821b40
mov byte [esp + 0x18], al
movzx eax, word [0xb7c500]
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fmul st(1)
call fcn.00821b40
fstp st(0)
mov ecx, dword [0xc6aa78]
mov edx, dword [ecx]
push edx
mov byte [esp + 0x24], al
mov eax, dword [0xc97b24]
push 1
call dword [eax + 0x20]
mov ecx, dword [0xb6f03c]
add esp, 8
test ecx, ecx
je 0x714123
fld dword [ecx + 4]
fld dword [ecx]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fld dword [ecx + 0x28]
fcomp dword [0x858b50]
fnstsw ax
test ah, 5
jp 0x71411a
fmul dword [0x858c1c]
fld dword [ecx + 8]
fxch st(1)
fpatan
jmp 0x714129
fld dword [0x858b50]
mov edi, dword [esp + 0x1c]
fstp dword [0xc6aa64]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
xor esi, esi
jmp 0x714145
mov ecx, dword [0xb6f03c]
test ecx, ecx
lea eax, [ecx + 0x30]
jne 0x714151
mov eax, 0xb6f02c
mov ecx, dword [eax]
fld dword [esi + 0x8d5394]
fmul dword [0x8594dc]
mov dword [esp + 0x3c], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x40], edx
fadd dword [esp + 0x3c]
mov eax, dword [eax + 8]
push 1
push 0
fstp dword [esp + 0x44]
lea ecx, [esp + 0x18]
fld dword [esi + 0x8d53c4]
push ecx
fmul dword [0x8594dc]
mov dword [esp + 0x50], eax
lea edx, [esp + 0x20]
push edx
fadd dword [esp + 0x50]
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x50]
fstp dword [esp + 0x54]
push ecx
fld dword [esi + 0x8d53f4]
fmul dword [0x858b34]
fadd dword [0x858a10]
fstp dword [esp + 0x5c]
call fcn.0070ce30
add esp, 0x18
test al, al
je 0x71421e
fld dword [0x858624]
mov edx, dword [0xc6aa64]
fdiv dword [esp + 0x2c]
mov eax, dword [esp + 0x2c]
push 0xff
push edx
push ecx
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
fstp dword [esp]
fld dword [esp + 0x1c]
push 0xff
fmul dword [0x858a10]
push ebp
push ebx
push edi
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x38]
fmul dword [0x8653f4]
fstp dword [esp]
push eax
push ecx
push edx
call fcn.0070eab0
add esp, 0x30
add esi, 4
cmp esi, 0x30
jl 0x71413f
call fcn.0070cf20
fld dword [0xc812e4]
fcomp dword [0x858b50]
fnstsw ax
test ah, 0x44
jnp 0x71438c
mov eax, dword [0xc3e000]
mov ecx, dword [eax]
mov edx, dword [0xc97b24]
push ecx
push 1
call dword [edx + 0x20]
add esp, 8
xor esi, esi
mov dword [esp + 0x1c], esi
fild dword [esp + 0x1c]
mov eax, dword [0xb6f03c]
test eax, eax
mov dword [esp + 0x40], 0x42c80000
fmul dword [0x858ce8]
mov dword [esp + 0x44], 0x40a00000
fstp dword [esp + 0x3c]
je 0x71428e
add eax, 0x30
jmp 0x714293
mov eax, 0xb6f02c
fld dword [esp + 0x3c]
push 1
fadd dword [eax]
push 0
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x2c]
fstp dword [esp + 0x44]
fld dword [eax + 4]
fadd dword [0x858628]
fstp dword [esp + 0x48]
fld dword [eax + 8]
lea eax, [esp + 0x18]
fadd dword [0x858c80]
push eax
push ecx
push edx
lea eax, [esp + 0x50]
fstp dword [esp + 0x58]
push eax
call fcn.0070ce30
add esp, 0x18
test al, al
je 0x714379
fld dword [0x858624]
push 0xff
fdiv dword [esp + 0x30]
push ecx
movzx ecx, byte [esi + 0x8d5380]
mov dword [esp + 0x28], ecx
fstp dword [esp]
fild dword [esp + 0x28]
push 0xff
fmul dword [0xc812e4]
call fcn.00821b40
movzx edx, byte [esi + 0x8d5378]
mov dword [esp + 0x2c], edx
fild dword [esp + 0x2c]
push eax
fmul dword [0xc812e4]
call fcn.00821b40
push eax
movzx eax, byte [esi + 0x8d5370]
mov dword [esp + 0x34], eax
fild dword [esp + 0x34]
fmul dword [0xc812e4]
call fcn.00821b40
fld dword [esp + 0x24]
fmul dword [0x858b40]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x3c]
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x34]
fadd st(0), st(0)
fstp dword [esp]
push ecx
push edx
push eax
call fcn.0070e4a0
add esp, 0x2c
inc esi
cmp esi, 6
mov dword [esp + 0x1c], esi
jl 0x714262
call fcn.0070cf20
mov ecx, dword [0xc97b24]
push 5
push 0xa
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 6
push 0xb
call dword [edx + 0x20]
mov al, byte [0xb70153]
add esp, 0x10
cmp al, 5
jae 0x714639
mov ax, word [0xc81320]
test ax, ax
je 0x7143e3
cmp ax, 2
je 0x7143e3
cmp ax, 0xd
je 0x7143e3
cmp ax, 6
je 0x7143e3
cmp ax, 0xb
je 0x7143e3
cmp ax, 0x11
jne 0x714639
mov ax, word [0xc8131c]
test ax, ax
je 0x714410
cmp ax, 2
je 0x714410
cmp ax, 0xd
je 0x714410
cmp ax, 6
je 0x714410
cmp ax, 0xb
je 0x714410
cmp ax, 0x11
jne 0x714639
mov esi, dword [0xb7cb84]
mov edi, esi
shr esi, 0xd
and edi, 0x1fff
and esi, 0x3f
cmp edi, 0x320
jge 0x714639
mov eax, dword [0xb6f03c]
test eax, eax
je 0x71443e
add eax, 0x30
jmp 0x714443
mov eax, 0xb6f02c
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], eax
mov eax, esi
mov dword [esp + 0x30], ecx
cdq
mov ecx, 7
idiv ecx
sub edx, 3
mov dword [esp + 0x20], edx
fild dword [esp + 0x20]
mov edx, esi
and edx, 0x80000007
fmul dword [0x858b1c]
fstp dword [esp + 0x3c]
jns 0x714485
dec edx
or edx, 0xfffffff8
inc edx
sub edx, 4
mov dword [esp + 0x20], edx
fild dword [esp + 0x20]
lea ecx, [esp + 0x3c]
mov dword [esp + 0x44], 0x3f800000
fmul dword [0x858b1c]
fstp dword [esp + 0x40]
call fcn.0059c910
mov eax, esi
cdq
mov ecx, 9
idiv ecx
mov eax, esi
mov ecx, 0xa
mov dword [esp + 0x50], 0x3dcccccd
sub edx, 5
mov dword [esp + 0x20], edx
cdq
fild dword [esp + 0x20]
idiv ecx
fstp dword [esp + 0x48]
lea ecx, [esp + 0x48]
sub edx, 5
mov dword [esp + 0x20], edx
fild dword [esp + 0x20]
fstp dword [esp + 0x4c]
call fcn.0059c910
fld dword [esp + 0x48]
mov edx, 0x190
fmul dword [0x858c4c]
sub edx, edi
fld dword [esp + 0x4c]
mov dword [esp + 0x20], edx
fmul dword [0x858c4c]
fld dword [esp + 0x50]
fmul dword [0x858c4c]
fstp dword [esp + 0x5c]
fxch st(1)
fadd dword [esp + 0x30]
fstp dword [esp + 0x30]
fadd dword [esp + 0x34]
fld dword [esp + 0x38]
fadd dword [esp + 0x5c]
fstp dword [esp + 0x38]
fild dword [esp + 0x20]
fadd st(0), st(0)
fld st(0)
fxch st(1)
fadd dword [0x858b40]
fstp dword [esp + 0x18]
fld dword [esp + 0x3c]
fmul st(1)
fstp dword [esp + 0x54]
fld dword [esp + 0x40]
fmul st(1)
fstp dword [esp + 0x58]
fld dword [esp + 0x44]
fmul st(1)
fstp dword [esp + 0x5c]
fstp st(0)
fld dword [esp + 0x54]
fadd dword [esp + 0x30]
fld dword [esp + 0x58]
fadd st(2)
fld dword [esp + 0x5c]
fadd dword [esp + 0x38]
fstp dword [esp + 0x74]
fld dword [esp + 0x3c]
fmul dword [esp + 0x18]
fld dword [esp + 0x40]
fmul dword [esp + 0x18]
fld dword [esp + 0x44]
fmul dword [esp + 0x18]
fstp dword [esp + 0x68]
mov eax, dword [esp + 0x74]
fxch st(1)
push 0x18
fadd dword [esp + 0x34]
push 0
mov dword [0xc4d960], eax
push 2
fstp dword [esp + 0x60]
mov ecx, dword [esp + 0x60]
push 0xc4d958
fadd st(3)
mov dword [0xc4d970], 0xe1ffffff
mov dword [0xc4d994], 0xffffff
mov dword [0xc4d97c], ecx
fstp dword [esp + 0x68]
fld dword [esp + 0x78]
mov edx, dword [esp + 0x68]
fadd dword [esp + 0x48]
mov dword [0xc4d980], edx
fstp dword [esp + 0x6c]
mov eax, dword [esp + 0x6c]
fxch st(1)
fstp dword [0xc4d958]
mov dword [0xc4d984], eax
fstp dword [0xc4d95c]
fstp st(0)
call fcn.007ef450
add esp, 0x10
test eax, eax
je 0x714639
push 2
push 0x8d579c
push 2
call fcn.007ef550
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
jmp fcn.007ef520
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret