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

Disassembly:
push ebp
mov ebp, ecx
push edi
push esi
push ebx
sub esp, 0xcc
mov eax, dword [esp + 0xec]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0xe0]
mov esi, dword [esp + 0xf0]
mov edi, dword [esp + 0xf4]
fld qword [esp + 0xe4]
mov edx, dword [ecx + eax*4]
mov ebx, edi
sub ebx, eax
mov edx, dword [edx + 0x2c30]
mov dword [esp + 0xa8], edx
mov edx, dword [ecx + esi*4]
mov edx, dword [edx + 0x2c30]
mov dword [esp + 0xac], edx
mov edx, dword [ebp + 0xbc]
mov edx, dword [edx + 0xc0]
test edx, edx
je 0x6fde0165
mov ebp, esi
mov edx, ebx
sub ebp, eax
mov eax, ebp
shl edx, 8
sar eax, 1
add eax, edx
cdq
idiv ebp
mov edx, 0x40
sar eax, 2
sub edx, eax
lea ecx, [ecx + edi*4]
sub esi, edi
mov dword [esp + 0x64], ecx
mov ecx, dword [ecx]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0xb8], edx
mov ebp, dword [ecx + ebx*4 + 0x1f98]
mov ecx, dword [ecx + esi*4 + 0x1fdc]
mov edi, dword [eax + 0xc4]
mov dword [esp + 0xb0], ebp
mov dword [esp + 0xb4], ecx
mov ecx, dword [eax + 0xc8]
lea edx, [ecx*4]
cmp edx, 8
mov dword [esp + 0x28], ecx
jae 0x6fde0174
test dl, 4
je 0x6fddfac4
mov dword [edi], 0
add edi, 4
test dl, 2
je 0x6fddfad1
mov word [edi], 0
add edi, 2
test dl, 1
je 0x6fddfad9
mov byte [edi], 0
mov edi, dword [esp + 0x64]
fstp qword [esp + 0x30]
mov eax, dword [edi]
mov eax, dword [eax + 0x2c30]
mov dword [esp + 0x9c], eax
call fcn.6fd65780
mov ebp, dword [esp + 0x90]
xor ecx, ecx
mov dword [esp + 0x2c], ecx
mov eax, dword [ebp + 0xbc]
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x28], edx
xor edx, edx
fild qword [esp + 0x28]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0xc8]
mov dword [esp + 0x2c], edx
fild qword [esp + 0x28]
mov dword [esp + 0x28], eax
mov eax, dword [edi]
mov ecx, dword [esp + 0x28]
fdivp st(1)
mov edi, dword [eax + 0x2c30]
lea edx, [ecx + ecx]
fld qword [0x707658d8]
fxch st(1)
fcomi st(1)
fcmovb st(0), st(1)
fld1
fcomi st(1)
fxch st(1)
fcmovb st(0), st(1)
fld qword [esp + 0x30]
fcomi st(3)
fcmovb st(0), st(3)
fstp st(3)
fxch st(1)
fcomi st(2)
fcmovnb st(0), st(2)
fstp st(2)
cmp edx, 8
fdivrp st(1)
fstp qword [esp + 0xa0]
jae 0x6fde019d
test dl, 4
je 0x6fddfb85
mov dword [edi], 0
add edi, 4
test dl, 2
je 0x6fddfb92
mov word [edi], 0
add edi, 2
test dl, 1
je 0x6fddfb9a
mov byte [edi], 0
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 0xc8]
mov eax, dword [eax + 0xcc]
mov dword [esp + 0x6c], ecx
test eax, eax
jle 0x6fde0113
xor eax, eax
xor ebp, ebp
mov dword [esp + 0x70], eax
lea eax, [ebx + ebx*8]
lea eax, [esi + eax*2]
mov dword [esp + 0x98], ebp
mov dword [esp + 0x68], eax
lea esi, [esi]
lea edi, [edi]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x6c]
mov eax, dword [eax]
imul edx, ebx
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x68]
lea esi, [edx*4]
lea ebx, [edx + edx]
mov edx, dword [eax + 0x2bf8]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], ebx
add edx, esi
mov dword [esp + 0x10], edx
mov edx, dword [eax + ecx*4 + 0x1a04]
add edx, ebx
mov dword [esp + 0xc], edx
mov edi, dword [eax + 0x19f0]
mov eax, dword [esp + 0x9c]
add esi, edi
mov dword [esp + 8], esi
mov esi, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esi + 0xc4]
mov dword [esp], eax
call dword [0x70e9dff8]
mov ecx, dword [esi + 0xc8]
mov eax, dword [esp + 0x90]
test ecx, ecx
mov dword [esp + 0x30], ecx
jle 0x6fde00d9
mov esi, dword [eax + 0xcc]
mov eax, dword [eax + 0xc4]
mov dword [esp + 0x48], esi
mov dword [esp + 0x5c], eax
xor eax, eax
mov dword [esp + 0x8c], esi
xor esi, esi
mov dword [esp + 0x50], eax
lea eax, [ecx - 1]
mov edi, esi
mov dword [esp + 0x74], eax
jmp 0x6fddfcc9
mov edi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x30]
lea eax, [edi + 1]
movzx edi, ax
add dword [esp + 0x38], 2
add dword [esp + 0x3c], 4
cmp edi, dword [esp + 0x30]
mov dword [esp + 0x50], edi
jge 0x6fde00f0
mov eax, dword [esp + 0x5c]
mov ebp, dword [eax + edi*4]
test ebp, ebp
jle 0x6fddfcab
mov eax, dword [esp + 0x64]
xor ecx, ecx
mov esi, dword [esp + 0x68]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x40], ebp
mov eax, dword [eax]
mov dword [esp + 0x4c], edi
mov eax, dword [eax + esi*4 + 0x1a04]
movzx eax, word [eax + ebx]
sar eax, 0xe
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x48]
dec eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x28]
sar eax, cl
test al, 1
je 0x6fddfd5d
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x28], 3
mov dword [esp + 0x44], eax
je 0x6fde00c0
mov eax, dword [esp + 0x3c]
mov esi, dword [esp + ecx*4 + 0xb0]
add eax, esi
mov edi, dword [eax]
test edi, edi
jne 0x6fddfd70
mov eax, dword [esp + ecx*4 + 0xa8]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x44]
add edx, eax
movzx eax, word [edx]
add eax, ebx
mov ebx, 0xffff
cmp eax, 0xffff
cmovg eax, ebx
mov word [edx], ax
dec ecx
je 0x6fddfca3
mov ecx, 1
jmp 0x6fddfd07
movsx edx, word [eax]
mov ebx, dword [esp + 0x50]
movsx eax, word [eax + 2]
mov edi, dword [esp + 0x70]
mov esi, edx
and edx, 0x1f
sar esi, 5
add esi, ebx
mov ebx, eax
sar ebx, 5
and eax, 0x1f
add edi, ebx
mov ebx, dword [esp + 0x6c]
imul ebx, edi
add ebx, esi
lea ebp, [ebx + 1]
mov dword [esp + 0x78], ebp
mov ebp, dword [esp + 0x6c]
add ebp, ebx
mov dword [esp + 0x7c], ebp
inc ebp
mov dword [esp + 0x80], ebp
mov ebp, 0x20
sub ebp, eax
mov dword [esp + 0x54], ebp
mov ebp, 0x20
sub ebp, edx
mov dword [esp + 0x58], ebp
mov ebp, dword [esp + 0x54]
imul ebp, dword [esp + 0x58]
mov dword [esp + 0x84], ebp
mov ebp, dword [esp + 0x54]
imul ebp, edx
imul edx, eax
mov dword [esp + 0x54], ebp
mov ebp, dword [esp + 0x58]
mov dword [esp + 0x88], edx
imul ebp, eax
cmp esi, dword [esp + 0x74]
mov dword [esp + 0x58], ebp
jge 0x6fddfee2
cmp edi, dword [esp + 0x60]
jge 0x6fddfee2
mov eax, esi
not eax
shr eax, 0x1f
test al, al
je 0x6fddfee2
mov eax, edi
not eax
shr eax, 0x1f
test al, al
je 0x6fddfee2
mov ebp, dword [esp + 0x44]
mov esi, 0xffff
mov eax, dword [esp + 0x84]
mov edi, dword [esp + ecx*4 + 0xa8]
imul eax, ebp
lea edx, [edi + ebx*2]
movzx ebx, word [edx]
add eax, 0x200
sar eax, 0xa
add ebx, eax
mov eax, dword [esp + 0x78]
cmp ebx, 0xffff
cmovg ebx, esi
mov word [edx], bx
lea edx, [edi + eax*2]
mov eax, dword [esp + 0x54]
movzx ebx, word [edx]
imul eax, ebp
add eax, 0x200
sar eax, 0xa
add eax, ebx
cmp eax, 0xffff
cmovg eax, esi
mov word [edx], ax
mov eax, dword [esp + 0x7c]
lea edx, [edi + eax*2]
mov eax, dword [esp + 0x58]
movzx ebx, word [edx]
imul eax, ebp
add eax, 0x200
sar eax, 0xa
add eax, ebx
cmp eax, 0xffff
cmovg eax, esi
mov word [edx], ax
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x80]
imul edx, ebp
lea ebx, [edi + eax*2]
movzx edi, word [ebx]
add edx, 0x200
sar edx, 0xa
add edi, edx
cmp edi, 0xffff
cmovg edi, esi
mov word [ebx], di
jmp 0x6fddfd5d
cmp esi, dword [esp + 0x30]
jge 0x6fde0091
cmp edi, dword [esp + 0x48]
jge 0x6fde0120
mov eax, edi
not eax
mov dword [esp + 0x94], eax
shr eax, 0x1f
mov edx, eax
mov eax, esi
not eax
shr eax, 0x1f
test al, al
je 0x6fde0140
test dl, dl
je 0x6fde0140
mov eax, dword [esp + ecx*4 + 0xa8]
mov ebp, dword [esp + 0x44]
lea edx, [eax + ebx*2]
mov eax, dword [esp + 0x84]
movzx ebx, word [edx]
imul eax, ebp
add eax, 0x200
sar eax, 0xa
add eax, ebx
mov ebx, 0xffff
cmp eax, 0xffff
cmovg eax, ebx
lea ebx, [esi + 1]
cmp dword [esp + 0x30], ebx
mov word [edx], ax
jle 0x6fddffb0
mov eax, dword [esp + 0x94]
shr eax, 0x1f
mov edx, eax
test dl, dl
je 0x6fddffa6
cmp esi, 0xffffffff
jl 0x6fddffa6
mov eax, dword [esp + ecx*4 + 0xa8]
mov edx, dword [esp + 0x78]
lea edx, [eax + edx*2]
movzx eax, word [edx]
mov ebp, eax
mov eax, dword [esp + 0x54]
imul eax, dword [esp + 0x44]
add eax, 0x200
sar eax, 0xa
add eax, ebp
mov ebp, 0xffff
cmp eax, 0xffff
cmovg eax, ebp
mov word [edx], ax
cmp esi, dword [esp + 0x30]
jge 0x6fde00a8
lea eax, [edi + 1]
cmp eax, dword [esp + 0x48]
jge 0x6fddfd5d
cmp edi, 0xffffffff
mov ebp, esi
setge byte [esp + 0x54]
not ebp
movzx eax, byte [esp + 0x54]
mov dl, al
mov eax, ebp
shr eax, 0x1f
test al, al
je 0x6fde0152
test dl, dl
je 0x6fde0152
mov eax, dword [esp + ecx*4 + 0xa8]
mov edx, dword [esp + 0x7c]
lea edx, [eax + edx*2]
movzx eax, word [edx]
mov ebp, eax
mov eax, dword [esp + 0x58]
imul eax, dword [esp + 0x44]
add eax, 0x200
sar eax, 0xa
add eax, ebp
mov ebp, 0xffff
cmp eax, 0xffff
cmovg eax, ebp
cmp dword [esp + 0x30], ebx
mov word [edx], ax
jle 0x6fddfd5d
lea esi, [esi]
lea edi, [edi]
inc edi
setge dl
test dl, dl
je 0x6fddfd5d
inc esi
jl 0x6fddfd5d
mov eax, dword [esp + ecx*4 + 0xa8]
mov esi, dword [esp + 0x80]
mov edx, dword [esp + 0x44]
lea ebx, [eax + esi*2]
mov eax, dword [esp + 0x88]
movzx esi, word [ebx]
imul edx, eax
mov eax, 0xffff
add edx, 0x200
sar edx, 0xa
add esi, edx
cmp esi, 0xffff
cmovg esi, eax
mov eax, dword [esp + 0x48]
mov word [ebx], si
mov dword [esp + 0x8c], eax
jmp 0x6fddfd5d
lea ebx, [esi + 1]
cmp ebx, dword [esp + 0x30]
jge 0x6fddfd5d
cmp edi, dword [esp + 0x48]
jl 0x6fde0130
lea eax, [edi + 1]
cmp eax, dword [esp + 0x48]
jge 0x6fddfd5d
jmp 0x6fde0030
mov ebp, dword [esp + ecx*4 + 0xb8]
imul eax, ebp
add eax, 0x20
sar eax, 6
mov dword [esp + 0x44], eax
jmp 0x6fddfd24
mov eax, dword [eax + 0xcc]
mov dword [esp + 0x8c], eax
lea esi, [esi]
lea edi, [edi]
mov eax, dword [esp + 0x98]
inc eax
movzx eax, ax
cmp eax, dword [esp + 0x8c]
mov dword [esp + 0x98], eax
mov dword [esp + 0x70], eax
jl 0x6fddfbe0
add esp, 0xcc
pop ebx
pop esi
pop edi
pop ebp
ret 0x18
lea ebx, [esi + 1]
jmp 0x6fddffb0
mov eax, edi
not eax
mov dword [esp + 0x94], eax
jmp 0x6fddff5b
lea ebx, [esi + 1]
cmp dword [esp + 0x30], ebx
jg 0x6fddff67
jmp 0x6fddffb0
cmp dword [esp + 0x30], ebx
jg 0x6fde0034
lea esi, [esi]
jmp 0x6fddfd5d
mov eax, 0x20
mov edx, 0x20
jmp 0x6fddfa5a
test edi, 1
jne 0x6fde01c6
test edi, 2
jne 0x6fde01fd
test edi, 4
jne 0x6fde01ef
mov ecx, edx
xor eax, eax
shr ecx, 2
and edx, 3
rep stosd dword es:[edi], eax
jmp 0x6fddfab6
test edi, 1
jne 0x6fde01e8
test edi, 2
jne 0x6fde01db
test edi, 4
jne 0x6fde01cd
mov ecx, edx
xor eax, eax
shr ecx, 2
and edx, 3
rep stosd dword es:[edi], eax
jmp 0x6fddfb77
mov byte [edi], 0
dec edx
inc edi
jmp 0x6fde017c
mov dword [edi], 0
sub edx, 4
add edi, 4
jmp 0x6fde01b5
mov word [edi], 0
sub edx, 2
add edi, 2
jmp 0x6fde01ad
mov byte [edi], 0
dec edx
inc edi
jmp 0x6fde01a5
mov dword [edi], 0
sub edx, 4
add edi, 4
jmp 0x6fde018c
mov word [edi], 0
sub edx, 2
add edi, 2
jmp 0x6fde0184