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

Disassembly:
mov eax, dword [ebp - 0xd8]
add eax, 1
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ebp - 0xd8]
cmp edx, dword [ecx + 0x18]
jae 0x409404
push edx
or edx, 0x14e41
call 0x409155
add byte [edx], bh
dec esp
inc ecx
aas
dec ecx
aaa
inc esi
add esp, 4
pop edx
push ebx
add ebx, 0x12a08
or ebx, 0x2d26
xor ebx, 0x6e75
sub ebx, 0x7e0
pop ebx
mov eax, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x7c]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0xdc], edx
push edi
and edi, 0x9aea
and edi, 0x17c72
or edi, 0x8c8e
pop edi
push edx
push ebx
add esp, 4
and edx, 0x5c11
add edx, 0x1523
add edx, 0xa93b
or edx, 0x12387
pop edx
mov eax, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0x450]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x454]
mov ecx, dword [ebp - 0x7c]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x458], ecx
push ebx
push ecx
add esp, 4
jmp 0x4091e9
add ebx, 0xd001
xor ebx, 0x5520
pop ebx
push edx
jmp 0x4091fe
or edx, 0x15012
xor edx, 0x1372
sub edx, 0x15d24
pop edx
mov dword [ebp - 0x40], 0
jmp 0x409223
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0xdc]
add eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4092bf
mov edx, dword [ebp - 0x40]
movsx eax, byte [ebp + edx - 0x174]
test eax, eax
je 0x4092bf
push esi
call 0x409254
add byte [ebx + 0x41], al
inc eax
dec esp
push eax
add esp, 4
pop esi
push ebx
push edi
add esp, 4
add ebx, 0xeff4
pop ebx
push edx
push ecx
add esp, 4
add edx, 0x13295
pop edx
push esi
or esi, 0x15234
pop esi
mov ecx, dword [ebp - 0xdc]
add ecx, dword [ebp - 0x40]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x40]
movsx ecx, byte [ebp + eax - 0x174]
cmp edx, ecx
je 0x4092b1
mov edx, dword [ebp - 0xdc]
add edx, dword [ebp - 0x40]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x40]
movsx edx, byte [ebp + ecx - 0x174]
cmp eax, edx
jne 0x4092b8
jmp 0x40921a
jmp 0x4092bf
push ecx
push edi
add esp, 4
or ecx, 0x2e92
jmp 0x4092d1
add ecx, 0x17b47
pop ecx
push edx
push edx
add esp, 4
add edx, 0x350f
sub edx, 0x180e9
jmp 0x4092f0
pop edx
mov eax, dword [ebp - 0xdc]
add eax, dword [ebp - 0x40]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x40]
movsx eax, byte [ebp + edx - 0x174]
cmp ecx, eax
jne 0x40931b
mov dword [ebp - 0x274], 0
jmp 0x4093b6
push ebx
push eax
add esp, 4
jmp 0x409325
sub ebx, 0x1586
jmp 0x409332
or ebx, 0x85c9
pop ebx
push ebx
sub ebx, 0x12eb
or ebx, 0xc3d7
or ebx, 0x6c31
pop ebx
mov ecx, dword [ebp - 0xdc]
inc dword [ebx]
dec ebp
ror byte [edi], 0xbe
adc dword [ebx + 0x458b20ca], eax
ror byte [edi], 0xbe
mov word [0xfffffe8c], es
inc dword [ebx]
dec ebp
ror byte [edi], 0xbe
adc dword [ebx + 0x458b20ca], eax
ror byte [edi], 0xbe
mov word [0xfffffe8c], es
or ecx, 0x20
cmp edx, ecx
jge 0x40937a
mov dword [ebp - 0x274], 0xffffffff
jmp 0x4093b6
push ecx
xor ecx, 0x136d8
or ecx, 0x6cfa
xor ecx, 0x3c7f
jmp 0x409395
pop ecx
push edx
push eax
add esp, 4
call 0x4093a8
add byte [ebp + 0x39], al
dec ebx
inc eax
cmp dword [esi], esi
aaa
add esp, 4
pop edx
mov dword [ebp - 0x274], 1
cmp dword [ebp - 0x274], 0
jne 0x4093ff
push edi
jmp 0x4093c8
call 0x4093d5
add byte [edi], dh
aas
dec ebp
cmp al, byte [ebx + 0x40]
cmp eax, 0x8104c483
invalid
jmp 0x40911d
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
je 0x4094b9
push ecx
push ebx
add esp, 4
add ecx, 0x854d
and ecx, 0xc925
xor ecx, 0x13169
pop ecx
push edi
push edx
add esp, 4
or edi, 0xa155
or edi, 0x1525c
pop edi
push eax
sub eax, 0x29e8
pop eax
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x45c], ecx
mov edx, dword [ebp - 0x45c]
mov dword [ebp - 0x460], edx
lea eax, [ebp - 0x2b0]
push eax
call dword [ebp - 0x460]
test eax, eax
jne 0x4094b9
push ecx
call 0x409489
add byte [edi + eax*2], bh
xor eax, 0x3944354d
inc edi
dec eax
xor eax, 0x8104c483
leave
mov byte [ebx], bl
add byte [eax], al
call 0x4094a0
add byte [ebx + 0x34], al
cmp dword [eax + 0x4d], ecx
xor al, 0x37
dec edi
add esp, 4
add ecx, 0xfa58
pop ecx
mov dword [ebp - 0x1b8], 0
jmp 0x409f60