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

Disassembly:
sub esp, 0x8c
mov edx, dword [esp + 0x98]
push ebx
mov ebx, dword [esp + 0x98]
push ebp
mov ebp, dword [esp + 0xa4]
push esi
mov esi, dword [esp + 0x9c]
shrd ebx, edx, 6
push edi
shr edx, 6
mov ecx, 0x10
lea edi, [esp + 0x58]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x78], ebx
cmp ebp, 0x40
jb 0x4070af
mov esi, dword [esp + 0x7c]
shr ebp, 6
mov dword [esp + 0x50], ebp
mov ebp, dword [esp + 0x94]
mov ecx, dword [esp + 0x5c]
mov edi, dword [esp + 0x58]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x74]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0x80]
mov dword [esp + 0x34], edx
mov edx, ebx
mov ebx, dword [esp + 0x8c]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x84]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x88]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x54], 0xa
mov ebp, dword [esp + 0x40]
lea ebx, [esi + edi]
rol ebx, 7
xor ecx, ebx
lea ebx, [ecx + edi]
rol ebx, 9
xor edx, ebx
lea ebx, [edx + ecx]
rol ebx, 0xd
xor esi, ebx
lea ebx, [esi + edx]
ror ebx, 0xe
xor edi, ebx
mov ebx, dword [esp + 0x20]
add ebx, ebp
rol ebx, 7
mov ebp, dword [esp + 0x2c]
xor ebp, ebx
mov ebx, dword [esp + 0x40]
add ebx, ebp
rol ebx, 9
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x28]
xor ebp, ebx
mov ebx, dword [esp + 0x2c]
add ebx, ebp
rol ebx, 0xd
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 0x20]
xor ebp, ebx
mov ebx, dword [esp + 0x28]
add ebx, ebp
ror ebx, 0xe
xor dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x24]
add ebx, ebp
mov ebp, dword [esp + 0x3c]
rol ebx, 7
xor ebp, ebx
mov ebx, dword [esp + 0x24]
add ebx, ebp
rol ebx, 9
mov dword [esp + 0x3c], ebp
mov ebp, dword [esp + 0x30]
xor ebp, ebx
mov ebx, dword [esp + 0x3c]
add ebx, ebp
rol ebx, 0xd
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x14]
xor ebp, ebx
mov ebx, dword [esp + 0x30]
add ebx, ebp
ror ebx, 0xe
xor dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x4c]
add ebx, ebp
mov ebp, dword [esp + 0x34]
rol ebx, 7
xor ebp, ebx
mov ebx, dword [esp + 0x4c]
add ebx, ebp
rol ebx, 9
mov dword [esp + 0x34], ebp
mov ebp, dword [esp + 0x44]
xor ebp, ebx
mov ebx, dword [esp + 0x34]
add ebx, ebp
rol ebx, 0xd
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x10]
xor ebp, ebx
mov ebx, dword [esp + 0x44]
add ebx, ebp
ror ebx, 0xe
xor dword [esp + 0x4c], ebx
mov dword [esp + 0x10], ebp
mov ebx, dword [esp + 0x34]
add ebx, edi
rol ebx, 7
mov ebp, dword [esp + 0x20]
xor ebp, ebx
lea ebx, [edi + ebp]
rol ebx, 9
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x30]
xor ebp, ebx
mov ebx, dword [esp + 0x20]
add ebx, ebp
rol ebx, 0xd
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x34]
xor ebp, ebx
mov ebx, dword [esp + 0x30]
add ebx, ebp
ror ebx, 0xe
xor edi, ebx
mov ebx, dword [esp + 0x40]
add ebx, ecx
rol ebx, 7
mov dword [esp + 0x34], ebp
mov ebp, dword [esp + 0x14]
xor ebp, ebx
mov ebx, dword [esp + 0x40]
add ebx, ebp
rol ebx, 9
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x44]
xor ebp, ebx
mov ebx, dword [esp + 0x14]
add ebx, ebp
rol ebx, 0xd
xor ecx, ebx
lea ebx, [ecx + ebp]
ror ebx, 0xe
xor dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x24]
add ebx, ebp
mov ebp, dword [esp + 0x10]
rol ebx, 7
xor ebp, ebx
mov ebx, dword [esp + 0x24]
add ebx, ebp
rol ebx, 9
xor edx, ebx
mov ebx, ebp
add ebx, edx
rol ebx, 0xd
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x2c]
xor ebp, ebx
lea ebx, [edx + ebp]
ror ebx, 0xe
xor dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x4c]
add ebx, ebp
rol ebx, 7
xor esi, ebx
lea ebx, [esi + ebp]
mov ebp, dword [esp + 0x28]
rol ebx, 9
xor ebp, ebx
lea ebx, [esi + ebp]
rol ebx, 0xd
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 0x3c]
xor ebp, ebx
mov ebx, dword [esp + 0x28]
add ebx, ebp
ror ebx, 0xe
xor dword [esp + 0x4c], ebx
sub dword [esp + 0x54], 1
mov dword [esp + 0x3c], ebp
jne 0x406dc4
mov ebx, dword [esp + 0x58]
add edi, ebx
xor dword [eax], edi
mov ebx, dword [esp + 0x8c]
mov edi, dword [esp + 0x20]
add edi, ebx
xor dword [eax + 4], edi
mov ebx, dword [esp + 0x80]
mov edi, dword [esp + 0x30]
add edi, ebx
xor dword [eax + 8], edi
mov ebx, dword [esp + 0x74]
mov edi, dword [esp + 0x34]
add edi, ebx
xor dword [eax + 0xc], edi
mov edi, dword [esp + 0x68]
add ecx, edi
xor dword [eax + 0x10], ecx
mov edi, dword [esp + 0x5c]
mov ecx, dword [esp + 0x40]
mov ebx, dword [esp + 0x78]
add ecx, edi
xor dword [eax + 0x14], ecx
mov edi, dword [esp + 0x90]
mov ecx, dword [esp + 0x14]
add ecx, edi
xor dword [eax + 0x18], ecx
mov edi, dword [esp + 0x84]
mov ecx, dword [esp + 0x44]
mov ebp, dword [esp + 0x94]
add ecx, edi
xor dword [eax + 0x1c], ecx
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x60]
add edx, ebx
xor dword [eax + 0x20], edx
mov edx, dword [esp + 0x6c]
add ecx, edx
xor dword [eax + 0x24], ecx
mov ecx, dword [esp + 0x24]
add ecx, edi
xor dword [eax + 0x28], ecx
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x70]
add ecx, ebp
xor dword [eax + 0x2c], ecx
mov ecx, dword [esp + 0x88]
add esi, ecx
xor dword [eax + 0x30], esi
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x7c]
add ecx, esi
xor dword [eax + 0x34], ecx
mov ecx, dword [esp + 0x3c]
add ecx, edi
xor dword [eax + 0x38], ecx
mov ecx, dword [esp + 0x4c]
mov edi, dword [esp + 0x64]
add ecx, edi
xor dword [eax + 0x3c], ecx
add ebx, 1
mov dword [esp + 0x78], ebx
jne 0x4070a1
inc edx
mov dword [esp + 0x6c], edx
add eax, 0x40
sub dword [esp + 0x50], 1
jne 0x406d4b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8c
ret