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

Disassembly:
add esp, 4
xor ecx, 0x125bc
pop ecx
push ecx
sub ecx, 0x1623a
pop ecx
push edi
add edi, 0x15eb1
pop edi
mov edx, dword [ebp - 0x8bc]
mov dword [ebp - 0x1f44], edx
push 0
call dword [ebp - 0x1f44]
mov dword [ebp - 0x2780], 0xa
push edx
push ebx
add esp, 4
call 0x100077c4
add byte [eax + 0x3f], cl
inc eax
dec eax
cmp dword [ebx + 0x4e], eax
add esp, 4
or edx, 0x15507
call 0x100077da
add byte [edx], dh
dec esp
inc ecx
xor al, 0x3e
inc esi
inc esp
add esp, 4
add edx, 0x13d9b
pop edx
mov eax, dword [ebp - 0x494]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x446], cl
mov edx, dword [ebp - 0xbfc]
sub edx, dword [ebp - 0x494]
mov dword [ebp - 0x19a8], edx
mov dword [ebp - 0xee8], 0
push esi
push ecx
add esp, 4
jmp 0x1000781c
pop esi
push esi
sub esi, 0x5ed8
or esi, 0x440c
pop esi
push esi
xor esi, 0x23fa
pop esi
push ecx
sub ecx, 0x15f03
or ecx, 0x7910
pop ecx
mov byte [ebp - 0xb5c], 0x56
mov byte [ebp - 0xb5b], 0x69
mov byte [ebp - 0xb5a], 0x72
mov byte [ebp - 0xb59], 0x74
mov byte [ebp - 0xb58], 0x75
mov byte [ebp - 0xb57], 0x61
mov byte [ebp - 0xb56], 0x6c
mov byte [ebp - 0xb55], 0x50
mov byte [ebp - 0xb54], 0x72
mov byte [ebp - 0xb53], 0x6f
mov byte [ebp - 0xb52], 0x74
mov byte [ebp - 0xb51], 0x65
mov byte [ebp - 0xb50], 0x63
mov byte [ebp - 0xb4f], 0x74
mov byte [ebp - 0xb4e], 0
push eax
call 0x100078ba
add byte [edx + 0x39], cl
inc ebp
inc ecx
xor ecx, dword [eax + 0x33]
cmp al, 0x83
les eax, [ecx + eax*4]
rcl byte [ebx], 0x68
add dword [eax], eax
pop eax
push ecx
push esi
add esp, 4
xor ecx, 0x6df7
sub ecx, 0x92de
xor ecx, 0x12a98
pop ecx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1f48], eax
mov ecx, dword [ebp - 0x1f48]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1f4c], edx
mov eax, dword [ebp - 0x1f4c]
mov dword [ebp - 0x1928], eax
push ebx
push ebx
add esp, 4
or ebx, 0x255e
and ebx, 0x1084b
pop ebx
push eax
push edx
add esp, 4
add eax, 0xe7f6
and eax, 0x5bdc
add eax, 0x3fc3
jmp 0x10007934
pop eax
cmp dword [ebp - 0x1928], 0
jne 0x1000794d
mov dword [ebp - 0x394], 0
jmp 0x10007bf4
mov ecx, dword [ebp - 0x1928]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xec4], eax
push ebx
push ebx
add esp, 4
or ebx, 0x12610
jmp 0x10007970
xor ebx, 0x8c50
xor ebx, 0xeb1c
pop ebx
push esi
jmp 0x10007984
pop esi
push eax
push ebx
add esp, 4
add eax, 0x9a69
pop eax
cmp dword [ebp - 0xec4], 0
jne 0x100079a9
mov dword [ebp - 0x394], 0
jmp 0x10007bf4
mov ecx, dword [ebp - 0xec4]
mov dword [ebp - 0x5d4], ecx
push ecx
add ecx, 0x1927
or ecx, 0x4131
and ecx, 0x218e
and ecx, 0xe752
pop ecx
push edx
push edx
add esp, 4
xor edx, 0xa78a
sub edx, 0x4808
xor edx, 0x3d74
pop edx
lea edx, [ebp - 0x1a68]
mov dword [ebp - 0xec0], edx
mov eax, dword [ebp - 0x5d4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xebc], ecx
xor edx, edx
mov word [ebp - 0x270], dx
xor eax, eax
mov word [ebp - 0x40], ax
push ebx
push edx
add esp, 4
call 0x10007a25
add byte [ebx + esi], dh
cmp eax, 0x354f4e45
cmp eax, dword [ebp - 0x7d]
les eax, [ecx + eax*4]
jecxz 0x10007a53
imul eax, dword [ecx], 0x3404eb00
aaa
dec eax
cmp eax, dword [ecx + 0x16f31cb]
add byte [ebx + 0x52], bl
or edx, 0x13933
pop edx
mov ecx, dword [ebp - 0xebc]
mov dx, word [ecx]
mov word [ebp - 0x12ba], dx
mov eax, dword [ebp - 0xebc]
add eax, 2
mov dword [ebp - 0xebc], eax
mov cx, word [ebp - 0x12ba]
mov word [ebp - 0x270], cx
mov edx, dword [ebp - 0xec0]
mov ax, word [edx]
mov word [ebp - 0x12bc], ax
mov ecx, dword [ebp - 0xec0]
add ecx, 2
mov dword [ebp - 0xec0], ecx
mov dx, word [ebp - 0x12bc]
mov word [ebp - 0x40], dx
push esi
and esi, 0x127db
or esi, 0x6f0f
pop esi
push edx
push edx
add esp, 4
sub edx, 0xcb9d
and edx, 0xee6a
pop edx
push edi
push ecx
add esp, 4
add edi, 0x5974
and edi, 0x51b8
pop edi
movzx eax, word [ebp - 0x40]
test eax, eax
jne 0x10007ae9
movzx ecx, word [ebp - 0x270]
movzx edx, word [ebp - 0x40]
sub ecx, edx
mov dword [ebp - 0x1930], ecx
jmp 0x10007b43
movzx eax, word [ebp - 0x270]
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x10007a11
movzx edx, word [ebp - 0x270]
xor edx, 0x20
movzx eax, word [ebp - 0x40]
cmp edx, eax
je 0x10007a11
movzx ecx, word [ebp - 0x270]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
jge 0x10007b2d
mov dword [ebp - 0x192c], 0xffffffff
jmp 0x10007b37
mov dword [ebp - 0x192c], 1
mov eax, dword [ebp - 0x192c]
mov dword [ebp - 0x1930], eax
cmp dword [ebp - 0x1930], 0
jne 0x10007b8c
push ebx
push ecx
add esp, 4
add al, 0x81
retf
int 0xe
add dword [eax], eax
add ebx, 0x13660
pop ebx
push ebx
push ecx
add esp, 4
jmp 0x10007b6b
sub ebx, 0xba96
add ebx, 0x1056c
sub ebx, 0xd70a
pop ebx
mov ecx, dword [ebp - 0x5d4]
mov dword [ebp - 0x394], ecx
jmp 0x10007bf4
push edi
push ebx
add esp, 4
add edi, 0xcec
pop edi
push eax
add eax, 0x101b3
xor eax, 0x1085d
and eax, 0x37a6
sub eax, 0x149a
pop eax
push ebx
push ebx
add esp, 4
xor ebx, 0xc63a
pop ebx
mov edx, dword [ebp - 0x5d4]
mov eax, dword [edx]
mov dword [ebp - 0x5d4], eax
mov ecx, dword [ebp - 0x5d4]
cmp ecx, dword [ebp - 0xec4]
je 0x10007bea
mov edx, dword [ebp - 0x5d4]
cmp dword [edx + 0x30], 0
jne 0x100079b5
mov dword [ebp - 0x394], 0
push ebx
jmp 0x10007bfe
pop ebx
push esi
push ebx
add esp, 4
sub esi, 0xea55
jmp 0x10007c13
call 0x10007c22
add byte [ebp + 0x3a], al
xor eax, dword [ebp + 0x34]
inc eax
xor al, 0x4f
push eax
add esp, 4
pop esi
cmp dword [ebp - 0x394], 0
jne 0x1000852b
mov eax, 0x6b
mov word [ebp - 0x1ae4], ax
mov ecx, 0x65
mov word [ebp - 0x1ae2], cx
mov edx, 0x72
mov word [ebp - 0x1ae0], dx
mov eax, 0x6e
mov word [ebp - 0x1ade], ax
mov ecx, 0x65
mov word [ebp - 0x1adc], cx
mov edx, 0x6c
mov word [ebp - 0x1ada], dx
mov eax, 0x33
mov word [ebp - 0x1ad8], ax
mov ecx, 0x32
mov word [ebp - 0x1ad6], cx
mov edx, 0x2e
mov word [ebp - 0x1ad4], dx
mov eax, 0x64
mov word [ebp - 0x1ad2], ax
mov ecx, 0x6c
mov word [ebp - 0x1ad0], cx
mov edx, 0x6c
mov word [ebp - 0x1ace], dx
xor eax, eax
mov word [ebp - 0x1acc], ax
push esi
xor esi, 0xd57
pop esi
push edx
push eax
add esp, 4
and edx, 0x146a3
xor edx, 0x140ac
call 0x10007cf4
add byte [edx], dh
inc edi
inc ebx
xor al, 0x49
xor eax, 0x83394a49
les eax, [ecx + eax*4]
ljmp 0xc65a
push eax
push edx
add esp, 4
jmp 0x10008538
or eax, 0xcf08
sub eax, 0x153d7
pop eax
push eax
push ecx
add esp, 4
or eax, 0xc6d6
and eax, 0x7924
add eax, 0x9429
pop eax
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x1f6c], ecx
mov edx, dword [ebp - 0x1f6c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x1f70], eax
mov ecx, dword [ebp - 0x1f70]
mov dword [ebp - 0x1990], ecx
push ecx
push edx
add esp, 4
sub ecx, 0x12201
or ecx, 0x10fa4
pop ecx
push ebx
and ebx, 0x16736
pop ebx
push edi
push edi
add esp, 4
add edi, 0x1372b
pop edi
push ecx
push edi
add esp, 4
add ecx, 0x8ebd
pop ecx
cmp dword [ebp - 0x1990], 0
jne 0x100085cf
mov dword [ebp - 0x394], 0
jmp 0x10008876
mov edx, dword [ebp - 0x1990]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xee0], ecx
push edi
push edx
add esp, 4
or edi, 0x11ffd
pop edi
push edx
add edx, 0x8887
call 0x10008603
add byte [ecx + 0x3e], al
inc esi
dec ecx
inc ecx
xor dh, byte [0xc4834342]
add al, 0x81
bnd jne 0x10008657
add byte [eax], al
xor edx, 0x2e46
pop edx
cmp dword [ebp - 0xee0], 0
jne 0x1000862b
mov dword [ebp - 0x394], 0
jmp 0x10008876
mov edx, dword [ebp - 0xee0]
mov dword [ebp - 0x5dc], edx
push edx
add edx, 0x168d7
add edx, 0x417e
or edx, 0x1867a
pop edx
push edx
push esi
add esp, 4
or edx, 0x3e7e
add edx, 0x2c7f
sub edx, 0x2cbb
and edx, 0x116d1
pop edx
lea eax, [ebp - 0x1a68]
mov dword [ebp - 0xedc], eax
mov ecx, dword [ebp - 0x5dc]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xed8], edx
xor eax, eax
mov word [ebp - 0x278], ax
xor ecx, ecx
mov word [ebp - 0x48], cx
ret 0x2c7f
push edi
xor edi, 0x3dbd
pop edi
push edx
and edx, 0x152a7
add edx, 0x5bad
sub edx, 0x12205
jmp 0x100086b6
pop edx
push edi
sub edi, 0xdf37
add edi, 0x126a7
pop edi
mov edx, dword [ebp - 0xed8]
mov ax, word [edx]
mov word [ebp - 0x12c2], ax
mov ecx, dword [ebp - 0xed8]
add ecx, 2
mov dword [ebp - 0xed8], ecx
mov dx, word [ebp - 0x12c2]
mov word [ebp - 0x278], dx
mov eax, dword [ebp - 0xedc]
mov cx, word [eax]
mov word [ebp - 0x12c4], cx
mov edx, dword [ebp - 0xedc]
add edx, 2
mov dword [ebp - 0xedc], edx
mov ax, word [ebp - 0x12c4]
mov word [ebp - 0x48], ax
push edi
or edi, 0x15d30
and edi, 0x1635e
xor edi, 0x3424
pop edi
push esi
push ecx
add esp, 4
add esi, 0xda84
sub esi, 0x1383f
sub esi, 0x3b7e
and esi, 0x11d20
pop esi
movzx ecx, word [ebp - 0x48]
test ecx, ecx
jne 0x1000876b
movzx edx, word [ebp - 0x278]
movzx eax, word [ebp - 0x48]
sub edx, eax
mov dword [ebp - 0x1998], edx
jmp 0x100087c5
movzx ecx, word [ebp - 0x278]
movzx edx, word [ebp - 0x48]
cmp ecx, edx
je 0x10008693
movzx eax, word [ebp - 0x278]
xor eax, 0x20
movzx ecx, word [ebp - 0x48]
cmp eax, ecx
je 0x10008693
movzx edx, word [ebp - 0x278]
movzx eax, word [ebp - 0x48]
cmp edx, eax
jge 0x100087af
mov dword [ebp - 0x1994], 0xffffffff
jmp 0x100087b9
mov dword [ebp - 0x1994], 1
mov ecx, dword [ebp - 0x1994]
mov dword [ebp - 0x1998], ecx
cmp dword [ebp - 0x1998], 0
jne 0x1000880e
push edx
push edx
add esp, 4
sub edx, 0xf1b9
pop edx
push ebx
sub ebx, 0x429b
or ebx, 0x1737a
and ebx, 0xa7d
pop ebx
push edx
push eax
add esp, 4
and edx, 0x16eaa
add edx, 0x162e6
pop edx
mov edx, dword [ebp - 0x5dc]
mov dword [ebp - 0x394], edx
jmp 0x10008876
push ecx
push ecx
add esp, 4
sub ecx, 0x7706
pop ecx
push eax
jmp 0x10008821
xor eax, 0x17ac7
pop eax
push eax
push ebx
add esp, 4
xor eax, 0xdd90
and eax, 0xfc0d
xor eax, 0x9b58
pop eax
mov eax, dword [ebp - 0x5dc]
mov ecx, dword [eax]
mov dword [ebp - 0x5dc], ecx
mov edx, dword [ebp - 0x5dc]
cmp edx, dword [ebp - 0xee0]
je 0x1000886c
mov eax, dword [ebp - 0x5dc]
cmp dword [eax + 0x30], 0
jne 0x10008637
mov dword [ebp - 0x394], 0
push edx
call 0x10008886
add byte [edi + 0x4e], cl
push eax
inc esi
xor esi, dword [edx]
inc esp
dec esp
cmp eax, dword [ebx - 0x357efb3c]
mov ecx, cs
add byte [eax], al
pop edx
push ecx
push esi
add esp, 4
xor ecx, 0x11641
xor ecx, 0x12cb5
sub ecx, 0x691
pop ecx
mov ecx, dword [ebp - 0x394]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3cc], edx
push ecx
add ecx, 0x727
jmp 0x100088c3
and ecx, 0x225b
pop ecx
push esi
or esi, 0x10dfe
add esi, 0x147b2
call 0x100088e5
add byte [eax + 0x43], dl
dec edi
dec edi
dec edx
xor esi, dword [edx]
xor al, 0x83
les eax, [esi + ebx*2]
mov dword [ebp - 0x8b4], 0
mov eax, dword [ebp - 0x3cc]
mov dword [ebp - 0x199c], eax
cmp dword [ebp - 0x199c], 0
jne 0x10008919
mov ecx, dword [ebp - 0x8b4]
mov dword [ebp - 0x5e0], ecx
jmp 0x10008c0a
mov edx, dword [ebp - 0x199c]
mov eax, dword [ebp - 0x3cc]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x19a0], eax
jne 0x10008941
mov ecx, dword [ebp - 0x8b4]
mov dword [ebp - 0x5e0], ecx
jmp 0x10008c0a
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x19a0]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x19a4], edx
cmp dword [ebp - 0x19a4], 0
jne 0x10008973
mov eax, dword [ebp - 0x8b4]
mov dword [ebp - 0x5e0], eax
jmp 0x10008c0a
mov ecx, dword [ebp - 0x3cc]
add ecx, dword [ebp - 0x19a4]
mov dword [ebp - 0x8a8], ecx
jne 0x10008998
mov edx, dword [ebp - 0x8b4]
mov dword [ebp - 0x5e0], edx
jmp 0x10008c0a
mov eax, dword [ebp - 0x8a8]
mov ecx, dword [ebp - 0x3cc]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x1f74], ecx
mov edx, dword [ebp - 0x8a8]
mov eax, dword [ebp - 0x3cc]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x1f78], eax
mov ecx, dword [ebp - 0x8a8]
mov edx, dword [ebp - 0x3cc]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x1f7c], edx
mov dword [ebp - 0x8ac], 0
jmp 0x100089f2
mov eax, dword [ebp - 0x8ac]
add eax, 1
mov dword [ebp - 0x8ac], eax
mov ecx, dword [ebp - 0x8a8]
mov edx, dword [ebp - 0x8ac]
cmp edx, dword [ecx + 0x18]
jae 0x10008bfe
mov eax, dword [ebp - 0x8ac]
mov ecx, dword [ebp - 0x1f74]
mov edx, dword [ebp - 0x3cc]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x8b0], edx
mov eax, dword [ebp - 0x8ac]
mov ecx, dword [ebp - 0x1f78]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x1f7c]
mov ecx, dword [ebp - 0x3cc]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1f80], ecx
mov dword [ebp - 0x1e4], 0
jmp 0x10008a62
mov edx, dword [ebp - 0x1e4]
add edx, 1
mov dword [ebp - 0x1e4], edx
mov eax, dword [ebp - 0x8b0]
add eax, dword [ebp - 0x1e4]
movsx ecx, byte [eax]
test ecx, ecx
je 0x10008b14
mov edx, dword [ebp - 0x1e4]
movsx eax, byte [ebp + edx - 0xb5c]
test eax, eax
je 0x10008b14
push esi
add esi, 0x480e
jmp 0x10008a9c
sub esi, 0xb2eb
and esi, 0x318c
pop esi
push edx
push eax
add esp, 4
sub edx, 0xbf83
pop edx
push edx
push edi
add esp, 4
and edx, 0x14478
pop edx
mov ecx, dword [ebp - 0x8b0]
add ecx, dword [ebp - 0x1e4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1e4]
movsx ecx, byte [ebp + eax - 0xb5c]
cmp edx, ecx
je 0x10008b06
mov edx, dword [ebp - 0x8b0]
add edx, dword [ebp - 0x1e4]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1e4]
movsx edx, byte [ebp + ecx - 0xb5c]
cmp eax, edx
jne 0x10008b0d
jmp 0x10008a53
jmp 0x10008b14
push esi
push edx
add esp, 4
xor esi, 0x17b2e
sub esi, 0x688f
or esi, 0x1dcb
pop esi
push esi
jmp 0x10008b33
sub esi, 0x12563
and esi, 0x570b
sub esi, 0x5ad7
pop esi
mov eax, dword [ebp - 0x8b0]
add eax, dword [ebp - 0x1e4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1e4]
movsx eax, byte [ebp + edx - 0xb5c]
cmp ecx, eax
jne 0x10008b73
mov dword [ebp - 0xee4], 0
jmp 0x10008be2
push edi
push edx
add esp, 4
or edi, 0xe563
xor edi, 0xe5e3
xor edi, 0x15c61
pop edi
push ecx
xor ecx, 0x9b2f
or ecx, 0x13741
xor ecx, 0x12c8a
or ecx, 0x4808
pop ecx
mov ecx, dword [ebp - 0x8b0]
add ecx, dword [ebp - 0x1e4]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1e4]
movsx ecx, byte [ebp + eax - 0xb5c]
or ecx, 0x20
cmp edx, ecx
jge 0x10008bd8
mov dword [ebp - 0xee4], 0xffffffff
jmp 0x10008be2
mov dword [ebp - 0xee4], 1
cmp dword [ebp - 0xee4], 0
jne 0x10008bf9
mov edx, dword [ebp - 0x1f80]
mov dword [ebp - 0x5e0], edx
jmp 0x10008c0a
jmp 0x100089e3
mov eax, dword [ebp - 0x8b4]
mov dword [ebp - 0x5e0], eax
mov ecx, dword [ebp - 0x5e0]
mov dword [ebp - 0xbf8], ecx
push ebx
sub ebx, 0xc194
jmp 0x10008c24
and ebx, 0xfbd7
pop ebx
push edi
push ebx
add esp, 4
xor edi, 0x59d3
jmp 0x10008c3b
or edi, 0xfcf7
sub edi, 0xa801
pop edi
mov edx, dword [ebp - 0xbf8]
mov dword [ebp - 0x1f84], edx
jl 0x10008c32
invalid
dec dword [ebp - 0xee77b]
call dword [eax + 0x6a]
inc eax
mov ecx, dword [ebp - 0x19a8]
push ecx
mov edx, dword [ebp - 0x494]
push edx
call dword [ebp - 0x1f84]
test eax, eax
jne 0x10008cbb
push ecx
push ebx
add esp, 4
and ecx, 0x145c4
or ecx, 0x15b30
and ecx, 0x11de4
and ecx, 0xbb5
pop ecx
push esi
push ebx
add esp, 4
sub esi, 0xd05b
pop esi
push eax
and eax, 0x12f77
pop eax
mov eax, dword [ebp - 0x8bc]
mov dword [ebp - 0x1f88], eax
push 0
call dword [ebp - 0x1f88]
mov ecx, dword [ebp - 0x1f8c]
mov dword [ebp - 0x8b8], ecx
jmp 0x10008cd8
mov edx, dword [ebp - 0x8b8]
add edx, 1
mov dword [ebp - 0x8b8], edx
mov eax, dword [ebp - 0x8b8]
cmp eax, dword [ebp - 0xbfc]
jae 0x10008d34
push ecx
push edi
add esp, 4
add ecx, 0x1128b
jmp 0x10008cfa
jmp 0x10008d01
pop ecx
push ecx
jmp 0x10008d0b
add ecx, 0x1823c
xor ecx, 0xda6f
pop ecx
movzx ecx, byte [ebp - 0x446]
mov edx, dword [ebp - 0x8b8]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x8b8]
mov byte [ecx], al
jmp 0x10008cc9
mov edx, dword [ebp - 0xbf8]
mov dword [ebp - 0x1f90], edx