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

Disassembly:
push esi
push eax
add esp, 4
and esi, 0x2680
or esi, 0xd944
pop esi
push ecx
add ecx, 0x16e8c
pop ecx
push ebx
push eax
add esp, 4
sub ebx, 0x13022
pop ebx
push edi
push edx
add esp, 4
jmp 0x415a73
pop edi
lea eax, [ebp - 0x17c8]
mov dword [ebp - 0xcd0], eax
mov ecx, dword [ebp - 0x51c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xccc], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push eax
jmp 0x415aa6
call fcn.00415ab2
add byte [esi], dh
inc eax
dec ebp
inc ebx
dec ecx
add esp, 4
add esp, 4
add esp, 4
or eax, 0x6a47
pop eax
push edx
sub edx, 0x13816
and edx, 0x15982
and edx, 0xa45d
pop edx
mov edx, dword [ebp - 0xccc]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xccc]
add ecx, 2
mov dword [ebp - 0xccc], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xcd0]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcd0]
add edx, 2
mov dword [ebp - 0xcd0], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x3c], ax
push ecx
call 0x415b35
add byte [edi + 0x42], al
xor dh, byte [edx]
dec edx
inc esi
inc ebx
add esp, 4
pop ecx
push ecx
xor ecx, 0x385c
or ecx, 0x39fc
call 0x415b55
add byte [edx + 0x4d], cl
dec esp
cmp bh, byte [ebx]
dec edx
dec ebp
dec ebx
dec esp
add esp, 4
pop ecx
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x415b76
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1670], edx
jmp 0x415bd0
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x415a9e
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
cmp eax, ecx
je 0x415a9e
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
cmp edx, eax
jge 0x415bba
mov dword [ebp - 0x162c], 0xffffffff
jmp 0x415bc4
mov dword [ebp - 0x162c], 1
mov ecx, dword [ebp - 0x162c]
mov dword [ebp - 0x1670], ecx
cmp dword [ebp - 0x1670], 0
jne 0x415c19
push eax
push edx
add esp, 4
sub eax, 0x17c8c
and eax, 0xfeee
or eax, 0x7edb
add eax, 0xf21a
pop eax
push eax
and eax, 0x524
xor eax, 0x15aef
or eax, 0x10595
pop eax
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x778], edx
jmp 0x415c81
push edi
sub edi, 0x18478
and edi, 0x1490b
jmp 0x415c2b
add edi, 0xa1e0
pop edi
push edi
push edi
add esp, 4
call 0x415c47
add byte [eax + 0x3e], al
inc edi
xor eax, 0x4832504f
dec eax
inc ebx
add esp, 4
pop edi
mov eax, dword [ebp - 0x51c]
mov ecx, dword [eax]
mov dword [ebp - 0x51c], ecx
mov edx, dword [ebp - 0x51c]
cmp edx, dword [ebp - 0xcd4]
je 0x415c77
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x415a42
mov dword [ebp - 0x778], 0
push edi
xor edi, 0x97ce
add edi, 0x17a1e
jmp 0x415c97
pop edi
push ecx
call 0x415ca9
add byte [eax + 0x3e], cl
inc edi
cmp byte [ecx], bh
inc esp
dec edx
dec esp
aaa
cmp byte [ebx - 0xe7efb3c], al
dec edi
add byte cs:[eax], al
pop ecx
cmp dword [ebp - 0x778], 0
jne 0x415cfd
push edi
call 0x415cca
add byte [ecx], bh
dec eax
inc esi
dec ebx
inc ecx
xor cl, byte [eax - 0x7d]
les eax, [ecx + eax*4]
iretd
push esi
and esi, 0x7054
and esi, 0x104da
sub esi, 0xfe5
pop esi
push ebx
push esi
add esp, 4
jmp 0x415d1c
pop ebx
push eax
push esi
add esp, 4
xor eax, 0xfd2b
add eax, 0x3ca
pop eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3a4], edx
mov dword [ebp - 0x788], 0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x1674], eax
cmp dword [ebp - 0x1674], 0
jne 0x415d6e
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], ecx
jmp 0x41605f
mov edx, dword [ebp - 0x1674]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1678], eax
jne 0x415d96
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], ecx
jmp 0x41605f
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1678]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1680], edx
cmp dword [ebp - 0x1680], 0
jne 0x415dc8
mov eax, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], eax
jmp 0x41605f
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1680]
mov dword [ebp - 0x77c], ecx
jne 0x415ded
mov edx, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], edx
jmp 0x41605f
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19d8], ecx
mov edx, dword [ebp - 0x77c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19dc], eax
mov ecx, dword [ebp - 0x77c]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19e0], edx
mov dword [ebp - 0x780], 0
jmp 0x415e47
mov eax, dword [ebp - 0x780]
add eax, 1
mov dword [ebp - 0x780], eax
mov ecx, dword [ebp - 0x77c]
mov edx, dword [ebp - 0x780]
cmp edx, dword [ecx + 0x18]
jae 0x416053
mov eax, dword [ebp - 0x780]
mov ecx, dword [ebp - 0x19d8]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x784], edx
mov eax, dword [ebp - 0x780]
mov ecx, dword [ebp - 0x19dc]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19e0]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x19e4], ecx
mov dword [ebp - 0x19c], 0
jmp 0x415eb7
mov edx, dword [ebp - 0x19c]
add edx, 1
mov dword [ebp - 0x19c], edx
mov eax, dword [ebp - 0x784]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
test ecx, ecx
je 0x415f69
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x8a8]
test eax, eax
je 0x415f69
push eax
or eax, 0x4cf0
add eax, 0xd056
jmp 0x415ef7
pop eax
push esi
push ecx
add esp, 4
or esi, 0xf11b
sub esi, 0x7dcd
and esi, 0x170ff
add esi, 0x1757
pop esi
mov ecx, dword [ebp - 0x784]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x8a8]
cmp edx, ecx
je 0x415f5b
mov edx, dword [ebp - 0x784]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x8a8]
cmp eax, edx
jne 0x415f62
jmp 0x415ea8
jmp 0x415f69
push esi
push edi
add esp, 4
or esi, 0x130d7
pop esi
push ecx
sub ecx, 0xc54b
xor ecx, 0xec7b
sub ecx, 0x4e7d
xor ecx, 0x3692
pop ecx
push edi
push esi
add esp, 4
sub edi, 0x6c92
pop edi
mov eax, dword [ebp - 0x784]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x8a8]
cmp ecx, eax
jne 0x415fc8
mov dword [ebp - 0xcd8], 0
jmp 0x416037
push edi
sub edi, 0x16e7d
call 0x415fde
add byte [esi], dh
inc edx
inc ebp
dec edx
inc eax
aas
xor bh, byte [0x4c4833e]
or edi, 0x9a70
or edi, 0x15723
pop edi
push ebx
push edx
add esp, 4
sub ebx, 0xcee5
pop ebx
mov ecx, dword [ebp - 0x784]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x8a8]
or ecx, 0x20
cmp edx, ecx
jge 0x41602d
mov dword [ebp - 0xcd8], 0xffffffff
jmp 0x416037
mov dword [ebp - 0xcd8], 1
cmp dword [ebp - 0xcd8], 0
jne 0x41604e
mov edx, dword [ebp - 0x19e4]
mov dword [ebp - 0x3fc], edx
jmp 0x41605f
jmp 0x415e38
mov eax, dword [ebp - 0x788]
mov dword [ebp - 0x3fc], eax
cmp dword [ebp - 0x3fc], 0
je 0x41613a
push ebx
push ecx
add esp, 4
add ebx, 0x111cf
pop ebx
push edx
push edi
add esp, 4
add edx, 0x130b0
jmp 0x41608c
call 0x41609a
add byte [0x3c49463b], bh
dec edi
dec edi
cmp al, byte [ebx - 0x74a5fb3c]
lea eax, [esp + edi*8]
invalid