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

Disassembly:
sub esp, 0x200
push ebx
push ebp
push esi
mov ebp, ecx
mov dword [esp + 0xc], 0xa5f9332c
push edi
mov dword [esp + 0x14], 0x4dff70ad
mov ecx, 0xff
mov dword [esp + 0x18], 0xacd5091b
mov dword [esp + 0x1c], 0x98a414c1
mov dword [esp + 0x20], 0x8e8ace5d
mov dword [esp + 0x24], 0xfcd6a97d
mov dword [esp + 0x28], 0xe0e80260
mov dword [esp + 0x2c], 0xff028fa4
mov dword [esp + 0x30], 0x7f23745
mov dword [esp + 0x34], 0xc3d109c9
mov dword [esp + 0x38], 0xe02cdda7
mov dword [esp + 0x3c], 0x765e5ada
mov dword [esp + 0x40], 0xce48f131
mov dword [esp + 0x44], 0xfe21888e
mov dword [esp + 0x48], 0xfb3c5868
mov dword [esp + 0x4c], 0x6d7b329c
mov dword [esp + 0x50], 0xb6bc56a3
mov dword [esp + 0x54], 0x397a6d23
mov dword [esp + 0x58], 0x6c9056c0
mov dword [esp + 0x5c], 0x6a119642
mov dword [esp + 0x60], 0x1975ba4d
mov dword [esp + 0x64], 0xd72f20ff
mov dword [esp + 0x68], 0x4c4bd7f7
mov dword [esp + 0x6c], 0x2305469d
mov dword [esp + 0x70], 0x6b1d1ec3
mov dword [esp + 0x74], 0xa4880466
mov dword [esp + 0x78], 0x43c6703b
mov dword [esp + 0x7c], 0xfb2ddd33
mov dword [esp + 0x80], 0xb56085bb
mov dword [esp + 0x84], 0xf31d6b38
mov dword [esp + 0x88], 0x5ffbfb19
mov dword [esp + 0x8c], 0xf49c6fb8
mov dword [esp + 0x90], 0xfe9c81b2
mov dword [esp + 0x94], 0x732be133
mov dword [esp + 0x98], 0x17a74914
mov dword [esp + 0x9c], 0xcf24a266
mov dword [esp + 0xa0], 0x4d9cc547
mov dword [esp + 0xa4], 0xada8db1a
mov dword [esp + 0xa8], 0x69f28cdb
mov dword [esp + 0xac], 0x315b2b05
mov dword [esp + 0xb0], 0x6f1cdd1a
mov dword [esp + 0xb4], 0xe47865c6
mov dword [esp + 0xb8], 0xbe5bbd78
mov dword [esp + 0xbc], 0x7e2f5082
mov dword [esp + 0xc0], 0xff176256
mov dword [esp + 0xc4], 0x5eb2e91
mov dword [esp + 0xc8], 0xa5d75d00
mov dword [esp + 0xcc], 0xca727c50
mov dword [esp + 0xd0], 0xe567f1a6
mov dword [esp + 0xd4], 0x11bc7340
mov dword [esp + 0xd8], 0xe2713459
mov dword [esp + 0xdc], 0x2053bb71
mov dword [esp + 0xe0], 0x457e2304
mov dword [esp + 0xe4], 0x52872df1
mov dword [esp + 0xe8], 0xf6df56de
mov dword [esp + 0xec], 0xa207e5e3
mov dword [esp + 0xf0], 0xac5525a7
mov dword [esp + 0xf4], 0x61ec9d58
mov dword [esp + 0xf8], 0xe9e24c8e
mov dword [esp + 0xfc], 0xa4dd9cbe
mov dword [esp + 0x100], 0xca41c3e3
mov dword [esp + 0x104], 0x6809aab5
mov dword [esp + 0x108], 0x96e8e6d7
mov dword [esp + 0x10c], 0xe4aa1b6a
lea ecx, [ecx]
mov al, byte [esp + ecx + 0xf]
xor byte [esp + ecx + 0x10], al
sub ecx, 1
jne 0x403e00
mov al, byte [esp + 0x10f]
xor byte [esp + 0x10], al
lea eax, [esp + 0x110]
push 0x100
push ecx
push eax
call fcn.004015f0
add esp, 0xc
xor esi, esi
xor eax, eax
mov byte [esp + eax + 0x110], al
inc eax
cmp eax, 0x100
jb 0x403e32
xor ebx, ebx
mov dl, byte [esp + ebx + 0x110]
movzx eax, bl
movzx ecx, dl
movzx eax, byte [esp + eax + 0x10]
add eax, esi
add ecx, eax
movzx esi, cl
mov al, byte [esp + esi + 0x110]
mov byte [esp + ebx + 0x110], al
inc ebx
mov byte [esp + esi + 0x110], dl
cmp ebx, 0x100
jb 0x403e43
xor edi, edi
xor ebx, ebx
xor esi, esi
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [esp + edi + 0x110]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
movzx eax, byte [esp + ebx + 0x110]
mov byte [esp + edi + 0x110], al
mov byte [esp + ebx + 0x110], cl
movzx eax, byte [esp + edi + 0x110]
add eax, edx
movzx eax, al
movzx eax, byte [esp + eax + 0x110]
xor byte [esi + section..data], al
inc esi
cmp esi, 0x344400
jb 0x403e80
pop edi
pop esi
mov dword [ebp], section..data
pop ebp
pop ebx
add esp, 0x200
ret