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

Disassembly:
push ebp
mov ecx, 0x68a2cf80
push edi
push esi
push ebx
sub esp, 0x2c
mov eax, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x18], eax
call fcn.6896bfc0
mov edx, eax
mov eax, dword [esp + 0x60]
mov eax, dword [eax + 0x6c]
mov eax, dword [eax + 4]
mov eax, dword [eax + edx*4]
mov dword [esp + 0x14], eax
test eax, eax
je 0x6899c167
cmp ebx, 0xffffffff
mov dword [esp + 0x10], 0
sete byte [esp + 0x1e]
xor edi, edi
jmp 0x6899bfaf
mov eax, dword [esp + 0x14]
mov byte [eax + ebx + 0x11d], dl
movsx eax, dl
lea edx, [eax - 0x30]
cmp dl, 9
ja 0x6899c027
lea edx, [edi + edi*4]
lea edi, [eax + edx*2 - 0x30]
cmp edi, dword [esp + 0x58]
jg 0x6899c045
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0xc]
jae 0x6899c0f0
add eax, 1
mov dword [esi + 8], eax
add dword [esp + 0x10], 1
mov ebp, 0xffffffff
cmp ebp, 0xffffffff
sete dl
test esi, esi
setne bl
and bl, dl
jne 0x6899c060
mov ebx, edx
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x6899bfd7
cmp byte [esp + 0x1e], 0
jne 0x6899c078
xor bl, byte [esp + 0x1e]
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x5c]
jae 0x6899c027
test bl, bl
je 0x6899c027
test esi, esi
je 0x6899bff5
test dl, dl
jne 0x6899c0b8
mov edx, ebp
movzx ebx, dl
mov ecx, dword [esp + 0x14]
movsx eax, byte [ecx + ebx + 0x11d]
test al, al
jne 0x6899bf76
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
cmp eax, 0x689681e0
jne 0x6899c0d0
cmp dl, 0x2a
jne 0x6899bf68
mov eax, dword [esp + 0x10]
test eax, eax
setne dl
cmp edi, dword [esp + 0x54]
setge al
test dl, al
je 0x6899c045
cmp edi, dword [esp + 0x58]
jle 0x6899c100
mov eax, dword [esp + 0x64]
mov edx, ebp
or dword [eax], 4
add esp, 0x2c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret 0x28
mov eax, dword [esi + 0xc]
cmp dword [esi + 8], eax
jae 0x6899c118
xor ebx, ebx
jmp 0x6899bfc4
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0xc]
cmp dword [eax + 8], ecx
jb 0x6899bfdb
mov ecx, eax
mov eax, dword [eax]
mov byte [esp + 0x1f], dl
call dword [eax + 0x24]
movzx edx, byte [esp + 0x1f]
cmp eax, 0xffffffff
jne 0x6899bfdb
mov dword [esp + 0x18], 0
xor ebx, 1
jmp 0x6899bfdb
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0xc]
jae 0x6899c140
movzx ebx, byte [eax]
mov edx, ebx
jmp 0x6899bffa
movsx edx, dl
mov dword [esp + 4], 0x2a
mov dword [esp], edx
call eax
sub esp, 8
mov edx, eax
jmp 0x6899c01e
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x28]
jmp 0x6899bfa5
mov eax, dword [esp + 0x50]
mov edx, ebp
mov dword [eax], edi
add esp, 0x2c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret 0x28
mov eax, dword [esi]
mov byte [esp + 0x1f], dl
mov ecx, esi
call dword [eax + 0x24]
movzx edx, byte [esp + 0x1f]
cmp eax, 0xffffffff
mov eax, 0
cmove esi, eax
cmovne ebx, eax
jmp 0x6899bfc4
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x24]
cmp eax, 0xffffffff
je 0x6899c156
mov edx, eax
movzx ebx, al
jmp 0x6899bffa
mov ebx, 0xff
mov edx, 0xffffffff
xor esi, esi
jmp 0x6899bffa
call fcn.68a1d1ac
nop
nop
nop
nop
push ebp
push edi
push esi
push ebx
sub esp, 0xbc
mov eax, dword [esp + 0xd8]
mov esi, dword [esp + 0xdc]
mov dword [esp + 0x44], ecx
mov ecx, 0x68a2ce48
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xd0]
mov dword [esp + 0x3c], eax
mov edi, dword [esp + 0xd4]
mov dword [esp + 0x40], esi
call fcn.6896bfc0
mov edx, dword [ebx + 0x6c]
mov ecx, dword [edx + 4]
cmp eax, dword [edx + 8]
jae 0x6899c3f2
mov eax, dword [ecx + eax*4]
test eax, eax
je 0x6899c3f2
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x68a5d218
mov dword [esp + 4], 0x68a5ceb4
mov dword [esp], eax
call fcn.68a1c580
test eax, eax
je 0x6899c3f2
mov eax, dword [eax + 8]
mov esi, dword [eax + 0x34]
mov ecx, dword [eax + 0x38]
mov edx, dword [eax + 0x2c]
mov dword [esp + 0x64], esi
mov esi, dword [eax + 0x3c]
mov dword [esp + 0x6c], ecx
mov ecx, dword [eax + 0x40]
mov dword [esp + 0x50], esi
mov esi, dword [eax + 0x44]
mov dword [esp + 0x4c], ecx
mov ecx, dword [eax + 0x4c]
mov dword [esp + 0x58], edx
mov edx, dword [eax + 0x30]
mov dword [esp + 0x5c], ecx
mov ecx, dword [eax + 0x58]
mov dword [esp + 0x48], esi
mov esi, dword [eax + 0x50]
mov dword [esp + 0x68], ecx
mov ecx, dword [eax + 0x5c]
mov dword [esp + 0x54], esi
mov esi, dword [eax + 0x54]
mov dword [esp + 0x60], edx
mov edx, dword [eax + 0x60]
mov eax, dword [eax + 0x48]
mov dword [esp + 0x84], esi
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x88], eax
lea eax, [esp + 0x74]
mov esi, dword [esp + 0x40]
mov dword [esp + 0x90], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x78]
mov dword [esp + 0x94], edx
mov edx, dword [esp + 0x60]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x70]
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0x64]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x9c], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0xc], esi
mov dword [esp + 0xa0], edx
mov edx, dword [esp + 0x50]
mov dword [esp], ebp
mov dword [esp + 0xa4], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0xa8], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x74], 0
mov dword [esp + 0xac], edx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], 7
call fcn.6899e7e0
sub esp, 0x24
mov ebp, eax
mov edi, edx
mov esi, eax
mov ecx, dword [esp + 0x74]
test ecx, ecx
je 0x6899c380
mov eax, dword [esp + 0xe4]
or dword [eax], 4
cmp edi, 0xffffffff
sete bl
test ebp, ebp
setne dl
and dl, bl
jne 0x6899c39d
mov edx, dword [esp + 0x3c]
cmp dword [esp + 0x40], 0xffffffff
sete al
test edx, edx
je 0x6899c358
test al, al
jne 0x6899c3d0
cmp bl, al
jne 0x6899c366
mov eax, dword [esp + 0xe4]
or dword [eax], 2
add esp, 0xbc
mov eax, esi
mov edx, edi
pop ebx
pop esi
pop edi
pop ebp
ret 0x1c
mov edx, dword [esp + 0x70]
cmp edi, 0xffffffff
mov eax, dword [esp + 0xe8]
sete bl
test ebp, ebp
mov dword [eax + 0x18], edx
setne dl
and dl, bl
je 0x6899c344
mov eax, dword [ebp + 0xc]
xor ebx, ebx
cmp dword [ebp + 8], eax
jb 0x6899c344
mov eax, dword [ebp]
mov byte [esp + 0x44], dl
mov ecx, ebp
mov esi, 0
call dword [eax + 0x24]
movzx edx, byte [esp + 0x44]
cmp eax, 0xffffffff
cmove ebx, edx
cmovne esi, ebp
jmp 0x6899c344
mov ecx, dword [esp + 0x3c]
xor eax, eax
mov edx, dword [ecx + 0xc]
cmp dword [ecx + 8], edx
jb 0x6899c358
mov eax, dword [ecx]
call dword [eax + 0x24]
cmp eax, 0xffffffff
sete al
jmp 0x6899c358
call fcn.68a1d1ac
nop
nop
nop
nop
nop
nop
nop
nop
nop