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

Disassembly:
push ebp
push edi
push esi
push ebx
mov eax, 0x139c
call fcn.6aa7e270
sub esp, eax
mov ebx, dword [esp + 0x13b4]
mov ebx, dword [ebx + 0x510]
mov dword [esp + 0x20], ebx
mov esi, dword [esp + 0x13b4]
mov esi, dword [esi + 0x508]
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0x13b4]
mov edi, dword [edi + 0x504]
mov dword [esp + 0x44], edi
cmp edi, 0
jle 0x6a8971dc
lea eax, [esp + 0x7c]
mov edx, edi
shl edx, 2
lea ecx, [eax + edx]
mov dword [eax], 0xffffff38
add eax, 4
cmp eax, ecx
jne 0x6a896920
lea eax, [esp + 0x180]
lea ecx, [eax + edx]
nop
mov dword [eax], 0xffffff38
add eax, 4
cmp eax, ecx
jne 0x6a896938
lea eax, [esp + 0x284]
lea ecx, [eax + edx]
nop
mov dword [eax], 0
add eax, 4
cmp eax, ecx
jne 0x6a896950
lea eax, [esp + 0x388]
lea ecx, [eax + edx]
nop
mov dword [eax], 1
add eax, 4
cmp eax, ecx
jne 0x6a896968
lea eax, [esp + 0x48c]
add edx, eax
nop
mov dword [eax], 0xffffffff
add eax, 4
cmp eax, edx
jne 0x6a896980
mov ebx, dword [esp + 0x44]
dec ebx
mov dword [esp + 0x18], ebx
test ebx, ebx
jle 0x6a8971b5
mov ebx, dword [esp + 0x13b4]
add ebx, 4
lea esi, [esp + 0x590]
mov dword [esp + 0x50], esi
mov edi, esi
xor ebp, ebp
xor esi, esi
mov eax, dword [esp + 0x20]
add eax, 0x458
mov dword [esp + 0x1c], eax
nop
inc esi
mov ecx, dword [ebx - 4]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x10]
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov eax, dword [ebx]
mov dword [esp], eax
mov edx, dword [esp + 0x13b8]
mov eax, dword [esp + 0x13bc]
call fcn.6a8960a0
add ebp, eax
add ebx, 4
add edi, 0x38
cmp esi, dword [esp + 0x18]
jne 0x6a8969c8
test ebp, ebp
je 0x6a8971b5
mov dword [esp + 0x64], 0xffffff38
mov dword [esp + 0x68], 0xffffff38
mov ebx, dword [esp + 0x20]
add ebx, 0x454
mov dword [esp + 0x54], ebx
mov edx, dword [esp + 0x44]
dec edx
mov dword [esp + 4], ebx
lea eax, [esp + 0x68]
mov dword [esp], eax
lea ecx, [esp + 0x64]
mov eax, dword [esp + 0x50]
call fcn.6a8962dc
mov edi, dword [esp + 0x64]
mov dword [esp + 0x7c], edi
mov dword [esp + 0x180], edi
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x184], ebp
mov dword [esp + 0x80], ebp
cmp dword [esp + 0x44], 2
jle 0x6a897225
mov dword [esp + 0x38], 2
lea esi, [esi]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x13b4]
mov esi, dword [edi + esi*4 + 0x208]
mov dword [esp + 0x40], esi
mov edi, dword [esp + esi*4 + 0x284]
mov dword [esp + 0x30], edi
mov ebx, dword [esp + esi*4 + 0x388]
mov dword [esp + 0x34], ebx
cmp dword [esp + edi*4 + 0x48c], ebx
je 0x6a896df8
mov esi, dword [esp + 0x13b4]
mov esi, dword [esi + edi*4 + 0x208]
mov dword [esp + 0x48], esi
mov edi, dword [esp + 0x13b4]
mov edi, dword [edi + ebx*4 + 0x208]
mov dword [esp + 0x4c], edi
mov esi, dword [esp + 0x30]
mov dword [esp + esi*4 + 0x48c], ebx
mov edi, dword [esp + 0x20]
mov ecx, dword [edi + esi*4 + 0x344]
mov ebx, dword [edi + ebx*4 + 0x344]
mov dword [esp + 0x18], ebx
mov eax, esi
shl eax, 2
mov esi, dword [esp + eax + 0x7c]
mov dword [esp + 0x2c], esi
mov eax, dword [esp + eax + 0x180]
test esi, esi
js 0x6a897158
test eax, eax
js 0x6a896b26
add dword [esp + 0x2c], eax
sar dword [esp + 0x2c], 1
mov eax, dword [esp + 0x34]
shl eax, 2
mov edi, dword [esp + eax + 0x7c]
mov dword [esp + 0x3c], edi
mov eax, dword [esp + eax + 0x180]
test edi, edi
js 0x6a897164
test eax, eax
js 0x6a896b50
add dword [esp + 0x3c], eax
sar dword [esp + 0x3c], 1
cmp dword [esp + 0x2c], 0xffffffff
je 0x6a89722e
cmp dword [esp + 0x3c], 0xffffffff
je 0x6a89722e
mov ebx, dword [esp + 0x3c]
sub ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
sub esi, ecx
mov dword [esp + 0x10], esi
mov eax, ebx
cdq
idiv esi
mov dword [esp + 0x24], eax
test ebx, ebx
js 0x6a897170
mov edx, eax
inc edx
mov dword [esp + 0x28], edx
lea eax, [ecx*4]
mov esi, dword [esp + 0x13bc]
fld dword [esi + eax]
fld dword [0x6add71e0]
fmul st(1)
fadd dword [0x6add71e4]
fnstcw word [esp + 0x5a]
mov dx, word [esp + 0x5a]
mov dh, 0xc
mov word [esp + 0x58], dx
fldcw word [esp + 0x58]
fistp dword [esp + 0x5c]
fldcw word [esp + 0x5a]
mov edx, dword [esp + 0x5c]
test edx, edx
js 0x6a89717c
cmp edx, 0x3ff
jle 0x6a896be4
mov edx, 0x3ff
mov edi, dword [esp + 0x20]
fld dword [edi + 0x458]
fld st(0)
mov esi, dword [esp + 0x13b8]
fadd dword [esi + eax]
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 5
je 0x6a896fa0
fld dword [edi + 0x448]
mov edi, dword [esp + 0x2c]
sub edi, edx
mov edx, edi
imul edx, edi
test ebx, ebx
js 0x6a896ff1
mov eax, dword [esp + 0x10]
imul eax, dword [esp + 0x24]
test eax, eax
js 0x6a897004
sub ebx, eax
mov dword [esp + 0x1c], ebx
mov edi, dword [esp + 0x2c]
mov ebp, 1
xor esi, esi
fld dword [0x6add71e0]
nop
inc ecx
cmp dword [esp + 0x18], ecx
jle 0x6a89700c
add esi, dword [esp + 0x1c]
cmp dword [esp + 0x10], esi
jg 0x6a896f8c
sub esi, dword [esp + 0x10]
add edi, dword [esp + 0x28]
mov ebx, dword [esp + 0x13bc]
fld dword [ebx + ecx*4]
fld st(0)
fmul st(2)
fadd dword [0x6add71e4]
fldcw word [esp + 0x58]
fistp dword [esp + 0x5c]
fldcw word [esp + 0x5a]
mov ebx, dword [esp + 0x5c]
test ebx, ebx
js 0x6a896f98
cmp ebx, 0x3ff
jle 0x6a896ca6
mov ebx, 0x3ff
mov eax, edi
sub eax, ebx
imul eax, eax
add edx, eax
inc ebp
fld st(3)
mov eax, dword [esp + 0x13b8]
fadd dword [eax + ecx*4]
fucompp
fnstsw ax
test ah, 5
jne 0x6a896c4c
test ebx, ebx
je 0x6a896c4c
mov dword [esp + 0x5c], edi
fild dword [esp + 0x5c]
mov dword [esp + 0x5c], ebx
fild dword [esp + 0x5c]
fld st(1)
fadd st(4)
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x6a896d0b
fxch st(1)
mov ebx, dword [esp + 0x20]
fsub dword [ebx + 0x44c]
fucompp
fnstsw ax
test ah, 0x45
jne 0x6a896c4c
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0x6a896d28
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0x6a896d28
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0x6a896d28
fstp st(0)
fstp st(0)
nop
mov dword [esp + 0x6c], 0xffffff38
mov dword [esp + 0x70], 0xffffff38
mov dword [esp + 0x74], 0xffffff38
mov dword [esp + 0x78], 0xffffff38
mov edx, dword [esp + 0x40]
sub edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x48]
shl ecx, 3
mov ebx, dword [esp + 0x50]
lea eax, [ebx + ecx*8]
sub eax, ecx
mov esi, dword [esp + 0x54]
mov dword [esp + 4], esi
lea edi, [esp + 0x70]
mov dword [esp], edi
lea ecx, [esp + 0x6c]
call fcn.6a8962dc
mov ebx, eax
mov edx, dword [esp + 0x4c]
sub edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
shl ecx, 3
mov esi, dword [esp + 0x50]
lea eax, [esi + ecx*8]
sub eax, ecx
mov edi, dword [esp + 0x54]
mov dword [esp + 4], edi
lea ecx, [esp + 0x78]
mov dword [esp], ecx
lea ecx, [esp + 0x74]
call fcn.6a8962dc
test ebx, ebx
je 0x6a897084
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x6c], edi
mov edx, dword [esp + 0x74]
mov dword [esp + 0x70], edx
test eax, eax
je 0x6a897090
mov dword [esp + 0x74], edx
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x78], esi
test ebx, ebx
je 0x6a897183
mov edi, dword [esp + 0x38]
mov dword [esp + edi*4 + 0x7c], 0xffffff38
mov dword [esp + edi*4 + 0x180], 0xffffff38
lea esi, [esi]
inc dword [esp + 0x38]
mov edi, dword [esp + 0x44]
cmp dword [esp + 0x38], edi
jne 0x6a896a80
mov edi, dword [esp + 0x7c]
mov esi, dword [esp + 0x180]
mov ebp, dword [esp + 0x80]
mov ebx, dword [esp + 0x184]
mov eax, dword [esp + 0x44]
shl eax, 2
mov dword [esp + 4], eax
mov eax, dword [esp + 0x13b0]
mov dword [esp], eax
call fcn.6a884a54
mov dword [esp + 0x10], eax
test edi, edi
js 0x6a896e55
test esi, esi
js 0x6a8971d1
add esi, edi
sar esi, 1
mov eax, dword [esp + 0x10]
mov dword [eax], esi
test ebp, ebp
js 0x6a896e6b
test ebx, ebx
js 0x6a8971c6
add ebx, ebp
sar ebx, 1
mov eax, dword [esp + 0x10]
mov dword [eax + 4], ebx
cmp dword [esp + 0x44], 2
jle 0x6a896f7f
mov ebp, dword [esp + 0x13b4]
add ebp, 0x408
mov ebx, 2
jmp 0x6a896ed2
add esi, eax
mov edx, dword [esp + ebx*4 + 0x7c]
test edx, edx
js 0x6a896f4e
mov eax, dword [esp + ebx*4 + 0x180]
test eax, eax
js 0x6a896eb5
add edx, eax
sar edx, 1
test edx, edx
js 0x6a896f60
cmp esi, edx
je 0x6a896f60
mov eax, dword [esp + 0x10]
mov dword [eax + ebx*4], edx
inc ebx
add ebp, 4
cmp ebx, dword [esp + 0x44]
je 0x6a896f7b
mov eax, dword [ebp]
mov edx, dword [ebp - 0xfc]
mov esi, dword [esp + 0x20]
mov esi, dword [esi + eax*4 + 0x344]
mov dword [esp + 0x14], esi
mov edi, dword [esp + 0x10]
mov esi, dword [edi + eax*4]
and esi, 0x7fff
mov ecx, dword [edi + edx*4]
and ecx, 0x7fff
sub ecx, esi
mov dword [esp + 0x18], ecx
test ecx, ecx
js 0x6a8971a8
mov edi, dword [esp + 0x20]
mov eax, dword [edi + ebx*4 + 0x344]
sub eax, dword [esp + 0x14]
imul eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
mov edi, dword [edi + edx*4 + 0x344]
sub edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
cdq
idiv edi
test ecx, ecx
jns 0x6a896e90
sub esi, eax
mov edx, dword [esp + ebx*4 + 0x7c]
test edx, edx
jns 0x6a896e9e
mov edx, dword [esp + ebx*4 + 0x180]
test edx, edx
jns 0x6a896eb5
lea esi, [esi]
or esi, 0x8000
mov eax, dword [esp + 0x10]
mov dword [eax + ebx*4], esi
inc ebx
add ebp, 4
cmp ebx, dword [esp + 0x44]
jne 0x6a896ed2
mov eax, dword [esp + 0x10]
add esp, 0x139c
pop ebx
pop esi
pop edi
pop ebp
ret
add edi, dword [esp + 0x24]
jmp 0x6a896c6d
xor ebx, ebx
jmp 0x6a896c99
fild dword [esp + 0x2c]
fld dword [edi + 0x448]
mov dword [esp + 0x5c], edx
fild dword [esp + 0x5c]
fld st(2)
fadd st(2)
fxch st(1)
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x6a896d18
fxch st(2)
fsub dword [edi + 0x44c]
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x45
je 0x6a896d22
mov edi, dword [esp + 0x2c]
sub edi, edx
mov edx, edi
imul edx, edi
test ebx, ebx
jns 0x6a896c22
neg ebx
mov eax, dword [esp + 0x10]
imul eax, dword [esp + 0x24]
test eax, eax
jns 0x6a896c33
neg eax
jmp 0x6a896c33
fstp st(0)
fstp st(1)
mov dword [esp + 0x5c], ebp
fild dword [esp + 0x5c]
mov esi, dword [esp + 0x20]
fld dword [esi + 0x450]
fxch st(2)
fmul st(0)
fdiv st(1)
fucomp st(2)
fnstsw ax
test ah, 0x45
je 0x6a897060
fld dword [esi + 0x44c]
fmul st(0)
fdivrp st(1)
fucomp st(1)
fnstsw ax
test ah, 0x45
je 0x6a897066
mov eax, edx
cdq
idiv ebp
mov dword [esp + 0x5c], eax
fild dword [esp + 0x5c]
fucompp
fnstsw ax
test ah, 0x45
jne 0x6a897068
jmp 0x6a896d28
fstp st(0)
fstp st(0)
jmp 0x6a897068
fstp st(0)
mov ebx, dword [esp + 0x38]
mov dword [esp + ebx*4 + 0x7c], 0xffffff38
mov dword [esp + ebx*4 + 0x180], 0xffffff38
jmp 0x6a896df8
mov edx, dword [esp + 0x70]
test eax, eax
jne 0x6a896dca
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x6c]
mov esi, dword [esp + 0x30]
mov dword [esp + esi*4 + 0x180], eax
test esi, esi
jne 0x6a8970b3
mov dword [esp + 0x7c], eax
mov edi, dword [esp + 0x38]
mov dword [esp + edi*4 + 0x7c], edx
mov dword [esp + edi*4 + 0x180], ecx
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x34]
mov dword [esp + ebx*4 + 0x7c], esi
dec ebx
je 0x6a89718a
test edx, edx
js 0x6a897199
mov edx, dword [esp + 0x40]
dec edx
js 0x6a89710f
mov ecx, dword [esp + edx*4 + 0x388]
cmp ecx, dword [esp + 0x34]
jne 0x6a89710f
lea eax, [esp + edx*4 + 0x388]
mov ebx, dword [esp + 0x38]
jmp 0x6a897107
sub eax, 4
cmp dword [eax], ecx
jne 0x6a89710f
mov dword [eax], ebx
dec edx
cmp edx, 0xffffffff
jne 0x6a897100
mov edx, dword [esp + 0x40]
inc edx
cmp dword [esp + 0x44], edx
jle 0x6a896df8
mov ecx, dword [esp + edx*4 + 0x284]
cmp ecx, dword [esp + 0x30]
jne 0x6a896df8
lea eax, [esp + edx*4 + 0x284]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x38]
jmp 0x6a89714b
add eax, 4
cmp dword [eax], ecx
jne 0x6a896df8
mov dword [eax], esi
inc edx
cmp edx, ebx
jne 0x6a897140
jmp 0x6a896df8
mov dword [esp + 0x2c], eax
jmp 0x6a896b26
mov dword [esp + 0x3c], eax
jmp 0x6a896b50
dec eax
mov dword [esp + 0x28], eax
jmp 0x6a896b90
xor edx, edx
jmp 0x6a896bd7
mov ecx, edx
jmp 0x6a89709c
mov dword [esp + 0x184], esi
test edx, edx
jns 0x6a8970dd
test ecx, ecx
jns 0x6a8970dd
jmp 0x6a896df8
mov eax, ecx
neg eax
mov dword [esp + 0x18], eax
jmp 0x6a896f0e
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x10]
jmp 0x6a896f7f
mov ebx, ebp
mov eax, dword [esp + 0x10]
jmp 0x6a896e6b
mov esi, edi
mov eax, dword [esp + 0x10]
jmp 0x6a896e55
jne 0x6a89698d
mov eax, dword [esp + 0x20]
add eax, 0x458
mov dword [esp + 0xc], eax
mov esi, dword [esp + 0x10]
mov dword [esp + 8], esi
lea edi, [esp + 0x590]
mov dword [esp + 0x50], edi
mov dword [esp + 4], edi
mov dword [esp], esi
xor ecx, ecx
mov edx, dword [esp + 0x13b8]
mov eax, dword [esp + 0x13bc]
call fcn.6a8960a0
mov ebp, eax
jmp 0x6a896a06
mov ebx, ebp
mov esi, edi
jmp 0x6a896e23
mov dword [esp], 1
call sub.msvcrt.dll_exit
nop