Function at 0x40a1d0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebx
push edi
push esi
sub esp, 0x60
mov edx, dword [ecx + 0x60]
mov word [esp + 0x14], 0x8d8f
mov byte [esp + 0x16], 0x9a
mov dword [esp + 0x17], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 6
ja 0x40a233
nop
nop
mov eax, dword [esp + 8]
mov esi, dword [esp + 8]
movzx esi, byte [esp + esi + 0x14]
add eax, 0x7a812d5b
xor eax, esi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
add al, 0x39
mov esi, dword [esp + 8]
mov byte [esp + esi + 0x14], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 7
jb 0x40a200
mov dword [esp + 8], 0x3a243842
mov dword [esp + 0xc], 0x2f26
mov byte [esp + 0x10], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 8
ja 0x40a28e
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov esi, dword [esp]
movzx esi, byte [esp + esi + 8]
add eax, 0x48e78087
xor eax, esi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
add al, 0x5d
mov esi, dword [esp]
mov byte [esp + esi + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 9
jb 0x40a260
mov eax, dword [esp + 0x70]
mov dword [esp + 0x1c], 0xf2f4a8af
mov dword [esp + 0x20], 0xceca9ca0
mov dword [esp + 0x24], 0xcdd2d49f
mov dword [esp + 0x28], 0xc6d9c2d1
mov dword [esp + 0x2c], 0x96c1d5d2
mov dword [esp + 0x30], 0xc4fba1bb
mov dword [esp + 0x34], 0xc3d9cfc6
mov dword [esp + 0x38], 0xcaf28ccc
mov dword [esp + 0x3c], 0xc4cbcbc1
mov dword [esp + 0x40], 0xb4b1bbcf
mov dword [esp + 0x44], 0xabe285b6
mov dword [esp + 0x48], 0xfebdb1b1
mov dword [esp + 0x4c], 0xa6b6a4a0
mov dword [esp + 0x50], 0xbaa4f78d
mov dword [esp + 0x54], 0xff91b8a7
mov byte [esp + 0x58], 0xd0
mov dword [esp + 0x59], 0
mov byte [esp + 0x5d], 0
mov dword [esp + 4], 0
mov esi, dword [esp + 4]
cmp esi, 0x41
ja 0x40a36f
nop
nop
nop
mov esi, dword [esp + 4]
mov edi, dword [esp + 4]
movzx edi, byte [esp + edi + 0x1c]
lea ebx, [esi + 0x9b]
and ebx, edi
add esi, edi
add ebx, ebx
sub esi, ebx
add esi, 0x10dd789b
mov dword [esp], esi
mov ebx, dword [esp]
add bl, 0xf9
mov esi, dword [esp + 4]
mov byte [esp + esi + 0x1c], bl
inc dword [esp + 4]
mov esi, dword [esp + 4]
cmp esi, 0x42
jb 0x40a330
mov esi, dword [esp + 0x74]
add eax, edx
movzx ebx, byte [esp + 0x1c]
mov edx, eax
test bl, bl
je 0x40a39b
lea edi, [esp + 0x1d]
mov edx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x40a390
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x40a3bb
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x40a3b0
mov esi, dword [esp + 0x78]
mov byte [edx], 0
movzx ebx, byte [esp + 8]
test bl, bl
je 0x40a3db
lea edi, [esp + 9]
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x40a3d0
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x40a3fb
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x40a3f0
mov byte [edx], 0
movzx ebx, byte [esp + 0x14]
test bl, bl
je 0x40a41b
lea esi, [esp + 0x15]
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x40a410
mov byte [edx], 0
sub edx, eax
add dword [ecx + 0x60], edx
add esp, 0x60
pop esi
pop edi
pop ebx
ret 0xc