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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x8eec14
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x88
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp + 0xc]
push dword [ebp + 0x10]
push eax
mov dword [ebp - 0x58], ecx
push eax
push dword [ebp + 8]
call fcn.006de5f0
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x58]
mov dword [ecx], 0xb3d3f8
mov eax, dword [0x9cf8a4]
mov dword [ecx + 4], eax
call fcn.006e4cc4
mov eax, dword [ebp - 0x58]
mov edx, dword [eax + 0xe8]
test edx, edx
je 0x6e479f
fld dword [0x96d3a8]
fadd dword [eax + 0x90]
mov eax, dword [edx + 0xa4]
fstp dword [eax + 0xc]
mov eax, dword [ebp - 0x58]
mov edx, 0xffff
mov word [eax + 0xf8], dx
mov word [eax + 0xfa], dx
mov word [eax + 0xfc], dx
mov word [eax + 0xfe], dx
mov word [eax + 0x100], dx
mov word [eax + 0x102], dx
mov word [eax + 0x104], dx
mov word [eax + 0x106], dx
mov word [eax + 0x108], dx
mov word [eax + 0x10a], dx
mov word [eax + 0x10c], dx
mov word [eax + 0x10e], dx
mov word [eax + 0x110], dx
mov word [eax + 0x112], dx
mov word [eax + 0x114], dx
mov word [eax + 0x116], dx
mov word [eax + 0x118], dx
mov word [eax + 0x11a], dx
mov word [eax + 0x11c], dx
mov word [eax + 0x11e], dx
mov word [eax + 0x120], dx
mov word [eax + 0x122], dx
mov word [eax + 0x124], dx
mov word [eax + 0x126], dx
mov word [eax + 0x128], dx
mov word [eax + 0x12a], dx
mov word [eax + 0x12c], dx
mov word [eax + 0x12e], dx
mov word [eax + 0x130], dx
mov word [eax + 0x132], dx
mov word [eax + 0x134], dx
mov word [eax + 0x136], dx
xor ecx, ecx
mov dword [eax + 0xec], ecx
mov dword [eax + 0xf0], ecx
mov dword [eax + 0xf4], ecx
mov dword [eax + 0x138], ecx
xor ebx, ebx
mov dword [ebp - 0x28], ebx
movsx ebx, word [eax + 0x7a]
movzx ecx, byte [ebx + 0x96d32c]
test ecx, ecx
jle 0x6e4af7
mov dword [ebp - 0x78], 0
xor edx, edx
mov eax, 0x168
idiv ecx
mov ecx, 0xa21740
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x54], eax
fild dword [ebp - 0x54]
fmul dword [0x96d3a4]
fdiv dword [0x96d3a0]
mov dword [ebp - 0x70], 0xc1200000
fnstcw word [ebp - 0x4c]
movzx eax, word [ebp - 0x4c]
or eax, 0xc00
mov dword [ebp - 0x44], eax
fldcw word [ebp - 0x44]
fistp dword [ebp - 0x3c]
fldcw word [ebp - 0x4c]
mov ebx, dword [ebp - 0x3c]
imul ebx, dword [ebp - 0x28]
add ebx, 0x4000
mov dword [ebp - 0x18], ebx
call fcn.0082d990
mov edx, ebx
xor ecx, ecx
call fcn.0082d8bc
lea eax, [ebp - 0x78]
push eax
lea edx, [ebp - 0x78]
xor ecx, ecx
call fcn.00830aa0
mov ecx, 1
call fcn.0082eb80
mov eax, dword [ebp - 0x58]
fld dword [eax + 0x20]
fadd dword [ebp - 0x78]
fld dword [eax + 0x24]
fadd dword [ebp - 0x74]
fld dword [eax + 0x28]
fadd dword [ebp - 0x70]
fxch st(2)
fstp dword [ebp - 0x24]
fstp dword [ebp - 0x20]
fstp dword [ebp - 0x1c]
push 0x4c
mov dword [ebp - 0x6c], 0
call fcn.005caba4
mov dword [ebp - 0x14], eax
add esp, 4
mov dword [ebp - 0x68], eax
test eax, eax
je 0x6e4cb9
mov dword [ebp - 0x6c], 1
mov dword [ebp - 4], 1
mov ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x58]
mov edi, dword [0xaca344]
movsx edx, word [ebx + 0x7a]
movsx esi, word [ebx + 0x78]
mov dword [ebp - 0x94], ecx
push edi
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x80], edi
call fcn.008193cc
mov dword [ebp - 4], 2
mov esi, dword [ebp - 0x14]
fld dword [ebp - 0x24]
fld dword [ebp - 0x20]
fld dword [ebp - 0x1c]
fxch st(2)
fst dword [esi + 0x20]
fxch st(1)
fst dword [esi + 0x24]
fxch st(2)
fst dword [esi + 0x28]
fxch st(1)
fstp dword [esi + 0x2c]
fxch st(1)
fstp dword [esi + 0x30]
fstp dword [esi + 0x34]
xor eax, eax
mov byte [esi + 0x46], al
mov dword [esi], 0xb3d418
movzx edx, byte [ebp - 0x88]
mov ecx, dword [ebp - 0x84]
mov ebx, dword [ebp - 0x8c]
mov edi, dword [edx*8 + 0x96d3f8]
mov dword [esi + 0x38], 0
mov byte [esi + 0x44], dl
mov byte [esi + 0x45], cl
mov dword [esi + 0x3c], ebx
mov dword [esi + 0x40], eax
mov byte [esi + 0x47], al
add edi, edi
add edi, edi
push edi
call fcn.008581c5
pop ecx
mov edx, esi
mov dword [edx + 0x1c], eax
movzx eax, byte [edx + 0x44]
xor esi, esi
add eax, eax
add eax, eax
add eax, eax
mov ecx, dword [eax + 0x96d3f8]
test ecx, ecx
jbe 0x6e4abe
lea ebx, [edx + 0x20]
mov dword [ebp - 0x5c], 0x4000
xor edx, edx
lea ecx, [esi + esi]
add ecx, ecx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
mov edx, dword [eax + 0x96d3f4]
lea eax, [ecx + ecx]
add eax, ecx
mov edi, dword [edx + eax + 4]
test edi, 0x1000
je 0x6e4a81
mov ecx, 0x2000
jmp 0x6e4a83
xor ecx, ecx
lea edi, [ebp - 0x64]
push ecx
push dword [edx + eax]
push edi
push ebx
call fcn.00509dc4
add esp, 0x10
mov edi, dword [ebp - 0x14]
mov ecx, dword [edi + 0x1c]
mov dword [ecx + esi*4], eax
movzx eax, byte [edi + 0x44]
lea edx, [esi + esi]
cmp eax, 2
je 0x6e4c33
add esi, 1
add eax, eax
add eax, eax
add eax, eax
cmp esi, dword [eax + 0x96d3f8]
jb 0x6e4a4f
mov dword [ebp - 0x6c], 0
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov dword [eax + ecx*4 + 0xec], edx
mov dword [ebp - 4], 0
mov edx, ecx
movsx ebx, word [eax + 0x7a]
movzx ecx, byte [ebx + 0x96d32c]
add edx, 1
cmp edx, ecx
mov dword [ebp - 0x28], edx
jl 0x6e48b6
test ebx, ebx
je 0x6e4c01
cmp ebx, 1
je 0x6e4bea
cmp ebx, 2
jge 0x6e4b24
add eax, 0x20
xor edx, edx
push edx
push edx
push eax
push 0x88
call fcn.00814298
add esp, 0x10
jmp 0x6e4b86
cmp ebx, 3
jle 0x6e4b5d
cmp ebx, 4
jne 0x6e4bb6
add eax, 0x20
xor edx, edx
push edx
push edx
push eax
push 0x88
call fcn.00814298
add esp, 0x10
test eax, eax
jl 0x6e4b86
push 0
push 0xfffffdb0
push eax
call fcn.00814664
add esp, 0xc
jmp 0x6e4b86
add eax, 0x20
xor edx, edx
push edx
push edx
push eax
push 0x88
call fcn.00814298
add esp, 0x10
test eax, eax
jl 0x6e4b86
push 0
push 0xfffffe80
push eax
call fcn.00814664
add esp, 0xc
mov edx, dword [ebp - 0x58]
mov eax, dword [edx + 0x1c]
test eax, eax
je 0x6e4b9b
movzx eax, word [eax + 0x1c]
mov word [edx + 0xb4], ax
mov edi, dword [ebp - 0x34]
mov esi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
mov eax, edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc
cmp ebx, 5
jne 0x6e4b0d
add eax, 0x20
xor edx, edx
push edx
push edx
push eax
push 0x88
call fcn.00814298
add esp, 0x10
test eax, eax
jl 0x6e4b86
push 0
push 0xffffff00
push eax
call fcn.00814664
add esp, 0xc
jmp 0x6e4b86
add eax, 0x20
xor edx, edx
push edx
push edx
push eax
push 0x88
call fcn.00814298
add esp, 0x10
jmp 0x6e4b86
add eax, 0x20
xor edx, edx
push edx
push edx
push eax
push 0x88
call fcn.00814298
add esp, 0x10
test eax, eax
jl 0x6e4b86
push 0
push 0x100
push eax
call fcn.00814664
add esp, 0xc
jmp 0x6e4b86
mov ecx, dword [ebp - 0x84]
cmp ecx, 0xf
jl 0x6e4c75
cmp ecx, 0x19
jge 0x6e4c75
cmp esi, 1
jg 0x6e4aad
mov ecx, edi
mov edi, dword [ecx + 0x1c]
mov edx, dword [edi + edx*2]
test edx, edx
je 0x6e4aad
mov eax, ecx
mov dword [edx + 0x44], 0x3fa66666
mov dword [edx + 0x48], 0x3fa66666
movzx eax, byte [eax + 0x44]
jmp 0x6e4aad
cmp ecx, 0x19
jl 0x6e4aad
cmp ecx, 0x1e
jge 0x6e4aad
cmp esi, 1
jg 0x6e4aad
mov ecx, edi
mov edi, dword [ecx + 0x1c]
mov edx, dword [edi + edx*2]
test edx, edx
je 0x6e4aad
mov eax, ecx
mov dword [edx + 0x44], 0x3fa66666
mov dword [edx + 0x48], 0x3fe66666
movzx eax, byte [eax + 0x44]
jmp 0x6e4aad
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x6e4ac5