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

Disassembly:
push ebp
push edi
push esi
push ebx
mov ebx, ecx
sub esp, 0xcc
mov eax, dword [esp + 0xec]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0xe0]
mov esi, dword [esp + 0xf0]
fld qword [esp + 0xe4]
mov edx, dword [ecx + eax*4]
fstp qword [esp + 0x98]
mov edx, dword [edx + 0x2c30]
mov dword [esp + 0xa8], edx
mov edx, dword [ecx + esi*4]
mov esi, dword [esp + 0xf4]
mov edx, dword [edx + 0x2c30]
sub esi, eax
mov dword [esp + 0x94], esi
mov dword [esp + 0xac], edx
mov edx, dword [ebx + 0xbc]
mov edi, dword [edx + 0xc0]
test edi, edi
je 0x6fde1c25
mov ebx, dword [esp + 0xf0]
mov edx, dword [esp + 0x94]
sub ebx, eax
mov eax, ebx
shl edx, 8
sar eax, 1
add eax, edx
cdq
idiv ebx
mov edx, 0x40
sar eax, 2
sub edx, eax
mov esi, dword [esp + 0xf4]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0xb8], edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x94]
mov dword [esp + 0x58], ecx
mov ecx, dword [ecx]
mov edi, dword [eax + 0xc4]
mov ebx, dword [ecx + esi*4 + 0x1f98]
mov esi, dword [esp + 0xf4]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0xf0]
sub ebx, esi
mov ecx, dword [ecx + ebx*4 + 0x1fdc]
mov dword [esp + 0xb4], ecx
mov ecx, dword [eax + 0xc8]
lea edx, [ecx*4]
cmp edx, 8
mov dword [esp + 0x20], ecx
jae 0x6fde1c34
test dl, 4
je 0x6fde1576
mov dword [edi], 0
add edi, 4
test dl, 2
je 0x6fde1583
mov word [edi], 0
add edi, 2
test dl, 1
je 0x6fde158b
mov byte [edi], 0
mov eax, dword [esp + 0x58]
xor edi, edi
mov eax, dword [eax]
mov eax, dword [eax + 0x2c30]
mov dword [esp + 0x8c], eax
call fcn.6fd65780
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x24], edi
xor edi, edi
mov eax, dword [ecx + 0xbc]
mov edx, dword [ecx + 0xcc]
mov esi, dword [eax + 0x3c]
mov dword [esp + 0x20], esi
mov esi, dword [eax + 0x38]
fild qword [esp + 0x20]
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], esi
mov esi, dword [ecx + 0xc8]
fild qword [esp + 0x20]
mov dword [esp + 0x60], esi
fdivp st(1)
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 + 0x98]
fcomi st(3)
fcmovb st(0), st(3)
fstp st(3)
fld st(2)
fxch st(2)
fcomi st(3)
fstp st(3)
fxch st(1)
fcmovb st(0), st(2)
fstp st(2)
test edx, edx
fdivrp st(1)
fstp qword [esp + 0xa0]
jle 0x6fde1bc2
mov eax, dword [esp + 0x94]
mov edi, esi
xor ebp, ebp
xor esi, esi
mov dword [esp + 0x90], esi
mov dword [esp + 0x64], ebp
lea eax, [eax + eax*8]
lea eax, [ebx + eax*2]
mov dword [esp + 0x5c], eax
lea esi, [esi]
lea edi, [edi]
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x60]
mov eax, dword [eax]
imul edx, ecx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x84]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x5c]
lea esi, [edx*4]
lea ebx, [edx + edx]
mov edx, dword [eax + 0x2bf8]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], esi
add edx, esi
mov dword [esp + 0x10], edx
mov edx, dword [eax + ecx*4 + 0x1a04]
add edx, ebx
mov dword [esp + 0xc], edx
mov ebx, dword [eax + 0x19f0]
add esi, ebx
mov dword [esp + 8], esi
mov esi, dword [esp + 0x8c]
mov dword [esp + 4], esi
mov eax, dword [edi + 0xc4]
mov dword [esp], eax
call dword [0x70e9dff8]
mov eax, dword [edi + 0xc8]
lea esi, [esi + eax*2]
test eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x8c], esi
jle 0x6fde1b2e
mov ecx, dword [eax + 0xcc]
xor esi, esi
mov eax, dword [eax + 0xc4]
mov edi, esi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x50], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x80], ecx
dec eax
mov dword [esp + 0x68], eax
jmp 0x6fde1742
mov edi, dword [esp + 0x40]
lea eax, [edi + 1]
movzx edi, ax
add dword [esp + 0x2c], 2
add dword [esp + 0x30], 4
cmp dword [esp + 0x28], edi
mov dword [esp + 0x44], edi
jle 0x6fde1b40
mov eax, dword [esp + 0x50]
mov ebp, dword [eax + edi*4]
test ebp, ebp
jle 0x6fde1724
mov eax, dword [esp + 0x58]
xor ecx, ecx
mov esi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x34], ebp
mov eax, dword [eax]
mov dword [esp + 0x40], edi
mov eax, dword [eax + esi*4 + 0x1a04]
movzx eax, word [eax + ebx]
sar eax, 0xe
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x3c]
dec eax
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x20]
sar eax, cl
test al, 1
je 0x6fde17d6
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x20], 3
mov dword [esp + 0x38], eax
je 0x6fde1b15
mov eax, dword [esp + 0x30]
mov esi, dword [esp + ecx*4 + 0xb0]
add eax, esi
mov edi, dword [eax]
test edi, edi
jne 0x6fde17e4
mov eax, dword [esp + ecx*4 + 0xa8]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x38]
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 0x6fde1720
mov ecx, 1
jmp 0x6fde1780
movsx edx, word [eax]
mov ebx, dword [esp + 0x44]
movsx eax, word [eax + 2]
mov edi, dword [esp + 0x64]
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 + 0x60]
imul ebx, edi
add ebx, esi
lea ebp, [ebx + 1]
mov dword [esp + 0x6c], ebp
mov ebp, dword [esp + 0x60]
add ebp, ebx
mov dword [esp + 0x70], ebp
inc ebp
mov dword [esp + 0x74], ebp
mov ebp, 0x20
sub ebp, eax
mov dword [esp + 0x48], ebp
mov ebp, 0x20
sub ebp, edx
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x48]
imul ebp, dword [esp + 0x4c]
mov dword [esp + 0x78], ebp
mov ebp, dword [esp + 0x48]
imul ebp, edx
imul edx, eax
mov dword [esp + 0x48], ebp
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x7c], edx
imul ebp, eax
cmp esi, dword [esp + 0x68]
mov dword [esp + 0x4c], ebp
jge 0x6fde1944
cmp edi, dword [esp + 0x54]
jge 0x6fde1944
mov eax, esi
not eax
shr eax, 0x1f
test al, al
je 0x6fde1944
mov eax, edi
not eax
shr eax, 0x1f
test al, al
je 0x6fde1944
mov ebp, dword [esp + 0x38]
mov esi, 0xffff
mov eax, dword [esp + 0x78]
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 + 0x6c]
cmp ebx, 0xffff
cmovg ebx, esi
mov word [edx], bx
lea edx, [edi + eax*2]
mov eax, dword [esp + 0x48]
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 + 0x70]
lea edx, [edi + eax*2]
mov eax, dword [esp + 0x4c]
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 + 0x7c]
mov eax, dword [esp + 0x74]
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 0x6fde17d6
cmp dword [esp + 0x28], esi
jle 0x6fde1af0
cmp edi, dword [esp + 0x3c]
jge 0x6fde1b70
mov eax, edi
not eax
mov dword [esp + 0x88], eax
shr eax, 0x1f
mov edx, eax
mov eax, esi
not eax
shr eax, 0x1f
test al, al
je 0x6fde1ba0
test dl, dl
je 0x6fde1ba0
mov eax, dword [esp + ecx*4 + 0xa8]
mov ebp, dword [esp + 0x38]
lea edx, [eax + ebx*2]
mov eax, dword [esp + 0x78]
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 + 0x28], ebx
mov word [edx], ax
jle 0x6fde1a0f
mov eax, dword [esp + 0x88]
shr eax, 0x1f
mov edx, eax
test dl, dl
je 0x6fde1a05
cmp esi, 0xffffffff
jl 0x6fde1a05
mov eax, dword [esp + ecx*4 + 0xa8]
mov edx, dword [esp + 0x6c]
lea edx, [eax + edx*2]
movzx eax, word [edx]
mov ebp, eax
mov eax, dword [esp + 0x48]
imul eax, dword [esp + 0x38]
add eax, 0x200
sar eax, 0xa
add eax, ebp
mov ebp, 0xffff
cmp eax, 0xffff
cmovg eax, ebp
mov word [edx], ax
cmp dword [esp + 0x28], esi
jle 0x6fde1b03
lea eax, [edi + 1]
cmp eax, dword [esp + 0x3c]
jge 0x6fde17d6
cmp edi, 0xffffffff
mov ebp, esi
setge byte [esp + 0x48]
not ebp
movzx eax, byte [esp + 0x48]
mov dl, al
mov eax, ebp
shr eax, 0x1f
test al, al
je 0x6fde1b90
test dl, dl
je 0x6fde1b90
mov eax, dword [esp + ecx*4 + 0xa8]
mov edx, dword [esp + 0x70]
lea edx, [eax + edx*2]
movzx eax, word [edx]
mov ebp, eax
mov eax, dword [esp + 0x4c]
imul eax, dword [esp + 0x38]
add eax, 0x200
sar eax, 0xa
add eax, ebp
mov ebp, 0xffff
cmp eax, 0xffff
cmovg eax, ebp
cmp dword [esp + 0x28], ebx
mov word [edx], ax
jle 0x6fde17d6
lea esi, [esi]
lea edi, [edi]
inc edi
setge dl
test dl, dl
je 0x6fde17d6
inc esi
jl 0x6fde17d6
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 0x7c]
mov eax, dword [esp + ecx*4 + 0xa8]
mov esi, dword [esp + 0x74]
imul edx, edi
lea ebx, [eax + esi*2]
mov eax, 0xffff
movzx esi, word [ebx]
add edx, 0x200
sar edx, 0xa
add esi, edx
cmp esi, 0xffff
cmovg esi, eax
mov eax, dword [esp + 0x3c]
mov word [ebx], si
mov dword [esp + 0x80], eax
jmp 0x6fde17d6
lea ebx, [esi + 1]
cmp dword [esp + 0x28], ebx
jle 0x6fde17d6
cmp edi, dword [esp + 0x3c]
jl 0x6fde1b80
lea eax, [edi + 1]
cmp eax, dword [esp + 0x3c]
jge 0x6fde17d6
jmp 0x6fde1a90
mov ebp, dword [esp + ecx*4 + 0xb8]
imul eax, ebp
add eax, 0x20
sar eax, 6
mov dword [esp + 0x38], eax
jmp 0x6fde179d
mov eax, dword [eax + 0xcc]
mov dword [esp + 0x80], eax
nop
lea esi, [esi]
mov eax, dword [esp + 0x90]
inc eax
movzx eax, ax
cmp eax, dword [esp + 0x80]
mov dword [esp + 0x90], eax
mov dword [esp + 0x64], eax
jge 0x6fde1bb5
mov edi, dword [esp + 0x28]
jmp 0x6fde1650
lea ebx, [esi + 1]
jmp 0x6fde1a0f
mov eax, edi
not eax
mov dword [esp + 0x88], eax
jmp 0x6fde19ba
cmp dword [esp + 0x28], ebx
jg 0x6fde1a94
jmp 0x6fde17d6
lea ebx, [esi + 1]
cmp ebx, dword [esp + 0x28]
jl 0x6fde19c6
lea esi, [esi]
jmp 0x6fde1a0f
mov eax, dword [esp + 0x84]
mov eax, dword [eax + 0xbc]
mov edx, dword [eax + 0x184]
test edx, edx
je 0x6fde1c18
mov eax, dword [eax + 0x90]
test eax, eax
je 0x6fde1c18
mov eax, dword [esp + 0xf4]
cmp dword [esp + 0xf0], eax
mov eax, 0
fld qword [esp + 0x98]
cmove eax, dword [esp + 0x94]
fstp qword [esp + 4]
mov ecx, dword [esp + 0x84]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x58]
mov eax, dword [eax]
mov dword [esp], eax
call fcn.6fde0980
sub esp, 0x10
add esp, 0xcc
pop ebx
pop esi
pop edi
pop ebp
ret 0x18
mov eax, 0x20
mov edx, 0x20
jmp 0x6fde14f0
test edi, 1
jne 0x6fde1c5d
test edi, 2
jne 0x6fde1c72
test edi, 4
jne 0x6fde1c64
mov ecx, edx
xor eax, eax
shr ecx, 2
and edx, 3
rep stosd dword es:[edi], eax
jmp 0x6fde1568
mov byte [edi], 0
dec edx
inc edi
jmp 0x6fde1c3c
mov dword [edi], 0
sub edx, 4
add edi, 4
jmp 0x6fde1c4c
mov word [edi], 0
sub edx, 2
add edi, 2
jmp 0x6fde1c44