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

Disassembly:
mov word [ebp - 0x184c], dx
mov eax, 0x6c
mov word [ebp - 0x184a], ax
xor ecx, ecx
mov word [ebp - 0x1848], cx
push edi
push edx
add esp, 4
add edi, 0xa0f3
jmp 0x4096cf
or edi, 0xed10
pop edi
push esi
push ecx
add esp, 4
and esi, 0x128ec
and esi, 0x840
sub esi, 0x15dc
pop esi
mov byte [ebp - 0x8b0], 0x4c
mov byte [ebp - 0x8af], 0x6f
mov byte [ebp - 0x8ae], 0x61
mov byte [ebp - 0x8ad], 0x64
mov byte [ebp - 0x8ac], 0x4c
mov byte [ebp - 0x8ab], 0x69
mov byte [ebp - 0x8aa], 0x62
mov byte [ebp - 0x8a9], 0x72
mov byte [ebp - 0x8a8], 0x61
mov byte [ebp - 0x8a7], 0x72
mov byte [ebp - 0x8a6], 0x79
mov byte [ebp - 0x8a5], 0x57
mov byte [ebp - 0x8a4], 0
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1a78], edx
mov eax, dword [ebp - 0x1a78]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1a7c], ecx
mov edx, dword [ebp - 0x1a7c]
mov dword [ebp - 0x16cc], edx
push edi
add edi, 0x16fe8
sub edi, 0xb259
add edi, 0x2db1
add edi, 0x8251
pop edi
push edi
push ebx
add esp, 4
xor edi, 0x1273e
add edi, 0x9bd2
add edi, 0x16d6c
pop edi
cmp dword [ebp - 0x16cc], 0
jne 0x4097bb
mov dword [ebp - 0x78c], 0
jmp 0x409a62
mov eax, dword [ebp - 0x16cc]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xd58], edx
push ebx
xor ebx, 0x41a0
call 0x4097e0
add byte [eax + 0x46], cl
xor eax, 0xc4833349
add al, 0x5b
push eax
call 0x4097f5
add byte [edi + ecx*2], dh
cmp esi, dword [esi]
inc esp
dec ecx
inc esp
inc edi
inc edi
add esp, 4
and eax, 0x1568d
pop eax
cmp dword [ebp - 0xd58], 0
jne 0x409817
mov dword [ebp - 0x78c], 0
jmp 0x409a62
mov eax, dword [ebp - 0xd58]
mov dword [ebp - 0x534], eax
push eax
push ecx
add esp, 4
and eax, 0x133a7
add eax, 0x150de
pop eax
push ecx
push edi
add esp, 4
xor ecx, 0x12b39
xor ecx, 0x7e26
pop ecx
push ebx
or ebx, 0x17bf2
add ebx, 0x65ab
pop ebx
lea ecx, [ebp - 0x1860]
mov dword [ebp - 0xd54], ecx
mov edx, dword [ebp - 0x534]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xd50], eax
xor ecx, ecx
mov word [ebp - 0x22c], cx
xor edx, edx
mov word [ebp - 0x48], dx
push ebx
xor ebx, 0xc090
or ebx, 0x13a94
sub ebx, 0x9c75
xor ebx, 0x380f
pop ebx
push esi
push ecx
add esp, 4
and esi, 0x1127f
or esi, 0x6317
or esi, 0xbb4f
pop esi
mov eax, dword [ebp - 0xd50]
mov cx, word [eax]
mov word [ebp - 0x109a], cx
mov edx, dword [ebp - 0xd50]
add edx, 2
mov dword [ebp - 0xd50], edx
mov ax, word [ebp - 0x109a]
mov word [ebp - 0x22c], ax
mov ecx, dword [ebp - 0xd54]
mov dx, word [ecx]
mov word [ebp - 0x109c], dx
mov eax, dword [ebp - 0xd54]
add eax, 2
mov dword [ebp - 0xd54], eax
mov cx, word [ebp - 0x109c]
mov word [ebp - 0x48], cx
push edi
push ebx
add esp, 4
and edi, 0x16f75
and edi, 0x6ce3
or edi, 0xd375
xor edi, 0x158a9
pop edi
push edi
add edi, 0x13721
xor edi, 0xc402
or edi, 0x1287b
pop edi
movzx edx, word [ebp - 0x48]
test edx, edx
jne 0x409957
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x48]
sub eax, ecx
mov dword [ebp - 0x16d4], eax
jmp 0x4099b1
movzx edx, word [ebp - 0x22c]
movzx eax, word [ebp - 0x48]
cmp edx, eax
je 0x40987f
movzx ecx, word [ebp - 0x22c]
xor ecx, 0x20
movzx edx, word [ebp - 0x48]
cmp ecx, edx
je 0x40987f
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x48]
cmp eax, ecx
jge 0x40999b
mov dword [ebp - 0x16d0], 0xffffffff
jmp 0x4099a5
mov dword [ebp - 0x16d0], 1
mov edx, dword [ebp - 0x16d0]
mov dword [ebp - 0x16d4], edx
cmp dword [ebp - 0x16d4], 0
jne 0x4099fa
push edi
push ebx
add esp, 4
jmp 0x4099c7
or edi, 0x13c17
sub edi, 0xc4bd
jmp 0x4099d8
pop edi
push esi
push eax
add esp, 4
jmp 0x4099e6
jmp 0x4099eb
pop esi
mov eax, dword [ebp - 0x534]
mov dword [ebp - 0x78c], eax
jmp 0x409a62
push ebx
push eax
add esp, 4
add ebx, 0x17217
xor ebx, 0xbffd
jmp 0x409a12
xor ebx, 0xb37d
pop ebx
push ecx
jmp 0x409a1f
xor ecx, 0xe2fb
sub ecx, 0x608f
pop ecx
mov ecx, dword [ebp - 0x534]
mov edx, dword [ecx]
mov dword [ebp - 0x534], edx
mov eax, dword [ebp - 0x534]
cmp eax, dword [ebp - 0xd58]
je 0x409a58
mov ecx, dword [ebp - 0x534]
cmp dword [ecx + 0x30], 0
jne 0x409823
mov dword [ebp - 0x78c], 0
push esi
push ecx
add esp, 4
jmp 0x409a6f
call 0x409a7c
add byte [eax], bh
dec ebx
dec eax
inc esi
xor eax, dword [edi + 0x49]
add esp, 4
pop esi
push ecx
xor ecx, 0x82e9
or ecx, 0x15520
sub ecx, 0x1095
pop ecx
cmp dword [ebp - 0x78c], 0
jne 0x409ade
push ebx
push edx
add esp, 4
or ebx, 0x6111
pop ebx
push eax
push edx
add esp, 4
and eax, 0x139e
pop eax
push eax
add eax, 0x15188
and eax, 0x87be
and eax, 0x1302d
xor eax, 0x14d0c
pop eax
mov dword [ebp - 0xad0], 0
jmp 0x40a606
push ecx
add ecx, 0x15d4
and ecx, 0xefbd
and ecx, 0x4fe9
pop ecx
push esi
push esi
add esp, 4
xor esi, 0x242c
and esi, 0x3fcb
pop esi
push edx
push edx
add esp, 4
xor edx, 0x8652
pop edx
mov edx, dword [ebp - 0x78c]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x79c], 0
mov ecx, dword [ebp - 0x32c]
mov dword [ebp - 0x16d8], ecx
cmp dword [ebp - 0x16d8], 0
jne 0x409b4f
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x3fc], edx
jmp 0x409e40
mov eax, dword [ebp - 0x16d8]
mov ecx, dword [ebp - 0x32c]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x16dc], ecx
jne 0x409b77
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x3fc], edx
jmp 0x409e40
mov eax, 8
imul ecx, eax, 0
mov edx, dword [ebp - 0x16dc]
mov eax, dword [edx + ecx + 0x78]
mov dword [ebp - 0x16e0], eax
cmp dword [ebp - 0x16e0], 0
jne 0x409ba9
mov ecx, dword [ebp - 0x79c]
mov dword [ebp - 0x3fc], ecx
jmp 0x409e40
mov edx, dword [ebp - 0x32c]
add edx, dword [ebp - 0x16e0]
mov dword [ebp - 0x790], edx
jne 0x409bce
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x3fc], eax
jmp 0x409e40
mov ecx, dword [ebp - 0x790]
mov edx, dword [ebp - 0x32c]
add edx, dword [ecx + 0x20]
mov dword [ebp - 0x1a80], edx
mov eax, dword [ebp - 0x790]
mov ecx, dword [ebp - 0x32c]
add ecx, dword [eax + 0x24]
mov dword [ebp - 0x1a84], ecx
mov edx, dword [ebp - 0x790]
mov eax, dword [ebp - 0x32c]
add eax, dword [edx + 0x1c]
mov dword [ebp - 0x1a88], eax
mov dword [ebp - 0x794], 0
jmp 0x409c28
mov ecx, dword [ebp - 0x794]
add ecx, 1
mov dword [ebp - 0x794], ecx
mov edx, dword [ebp - 0x790]
mov eax, dword [ebp - 0x794]
cmp eax, dword [edx + 0x18]
jae 0x409e34
mov ecx, dword [ebp - 0x794]
mov edx, dword [ebp - 0x1a80]
mov eax, dword [ebp - 0x32c]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x798], eax
mov ecx, dword [ebp - 0x794]
mov edx, dword [ebp - 0x1a84]
movzx eax, word [edx + ecx*2]
mov ecx, dword [ebp - 0x1a88]
mov edx, dword [ebp - 0x32c]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x1a8c], edx
mov dword [ebp - 0x1a4], 0
jmp 0x409c98
mov eax, dword [ebp - 0x1a4]
add eax, 1
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x798]
add ecx, dword [ebp - 0x1a4]
movsx edx, byte [ecx]
test edx, edx
je 0x409d4a
mov eax, dword [ebp - 0x1a4]
movsx ecx, byte [ebp + eax - 0x8b0]
test ecx, ecx
je 0x409d4a
push edx
xor edx, 0x5a76
call 0x409cd8
add byte [eax + 0x43], al
dec ecx
dec ebx
xor ecx, dword [ecx - 0x7d]
les eax, [edx + ebx*2]
push edx
push edx
add esp, 4
call 0x409ced
add byte [ebp + 0x36], cl
xor eax, 0x83424142
les eax, [ecx + eax*4]
enter 0x13a, 0
pop edx
mov edx, dword [ebp - 0x798]
add edx, dword [ebp - 0x1a4]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1a4]
movsx edx, byte [ebp + ecx - 0x8b0]
cmp eax, edx
je 0x409d3c
mov eax, dword [ebp - 0x798]
add eax, dword [ebp - 0x1a4]
movsx ecx, byte [eax]
xor ecx, 0x20
mov edx, dword [ebp - 0x1a4]
movsx eax, byte [ebp + edx - 0x8b0]
cmp ecx, eax
jne 0x409d43
jmp 0x409c89
jmp 0x409d4a
push ebx
jmp 0x409d54
jmp 0x409d5d
pop ebx
push esi
push esi
add esp, 4
sub esi, 0x1073c
pop esi
push ebx
jmp 0x409d73
pop ebx
push edi
sub edi, 0x182fc
pop edi
mov ecx, dword [ebp - 0x798]
add ecx, dword [ebp - 0x1a4]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1a4]
movsx ecx, byte [ebp + eax - 0x8b0]
cmp edx, ecx
jne 0x409da9
mov dword [ebp - 0xd5c], 0
jmp 0x409e18
push edi
push edx
add esp, 4
add edi, 0x1917
pop edi
push esi
jmp 0x409dbe
pop esi
push eax
jmp 0x409dc8
xor eax, 0x70f1
and eax, 0x5e79
xor eax, 0xa153
pop eax
mov edx, dword [ebp - 0x798]
add edx, dword [ebp - 0x1a4]
movsx eax, byte [edx]
or eax, 0x20
mov ecx, dword [ebp - 0x1a4]
movsx edx, byte [ebp + ecx - 0x8b0]
or edx, 0x20
cmp eax, edx
jge 0x409e0e
mov dword [ebp - 0xd5c], 0xffffffff
jmp 0x409e18
mov dword [ebp - 0xd5c], 1
cmp dword [ebp - 0xd5c], 0
jne 0x409e2f
mov eax, dword [ebp - 0x1a8c]
mov dword [ebp - 0x3fc], eax
jmp 0x409e40
jmp 0x409c19
mov ecx, dword [ebp - 0x79c]
mov dword [ebp - 0x3fc], ecx
cmp dword [ebp - 0x3fc], 0
je 0x409f1b
push ecx
xor ecx, 0xa91f
xor ecx, 0x2188
call 0x409e69
add byte [0x453f3c44], bh
cmp al, 0x37
dec ecx
cmp al, byte [ebx + 0x525904c4]
push edx
add esp, 4
sub edx, 0x4bfc
xor edx, 0x60c5
pop edx
mov edx, dword [ebp - 0x3fc]
mov dword [ebp - 0x1a90], edx
push ecx
or ecx, 0xa7a9
xor ecx, 0x7ddd
and ecx, 0xbb6b
pop ecx
push edi
push ebx
add esp, 4
add edi, 0x3c16
xor edi, 0xcfc8
xor edi, 0x15889
xor edi, 0x166df
pop edi
mov eax, dword [ebp - 0x1a90]
mov dword [ebp - 0x1a94], eax
lea ecx, [ebp - 0x176c]
push ecx
call dword [ebp - 0x1a94]
test eax, eax
jne 0x409f1b
push ecx
xor ecx, 0xb852
and ecx, 0x10b82
xor ecx, 0x7a45
or ecx, 0x9392
pop ecx
push edx
push esi
add esp, 4
add edx, 0xf57b
pop edx
push eax
push edi
add esp, 4
and eax, 0x492c
pop eax
mov dword [ebp - 0xad0], 0
jmp 0x40a606