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

Disassembly:
mov eax, dword [esp + 4]
dec eax
cmp eax, 5
ja case.default.0x42ba9e
jmp dword [eax*4 + 0x42bb38]
call fcn.0042b8a0
test eax, eax
mov eax, dword [esp + 8]
je 0x42bac1
mov ecx, dword [esp + 0xc]
push eax
push ecx
call fcn.00459c15
add esp, 8
ret
mov dword [esp + 8], eax
mov dword [esp + 4], eax
jmp 0x460340
mov eax, dword [esp + 8]
push eax
push eax
mov eax, dword [esp + 0x14]
push eax
call fcn.0045ca40
add esp, 0xc
ret
mov eax, dword [esp + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], eax
jmp 0x45e480
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 8]
push 1
push edx
push eax
push eax
call fcn.0045be00
add esp, 0x10
ret
mov eax, dword [esp + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], eax
jmp 0x45a850
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 8]
push 1
push ecx
push eax
push eax
call fcn.0045a6e0
add esp, 0x10
ret
mov byte [0], 0
ret
push ebx
push esi
push edi
mov edi, dword [esp + 0x10]
mov eax, dword [edi]
push eax
call fcn.00447cd0
mov ecx, dword [edi + 4]
push ecx
mov esi, eax
call fcn.00447cd0
mov edx, dword [esp + 0x20]
mov ecx, dword [edx + 0x40]
mov edi, eax
mov eax, dword [edx]
add eax, edi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
xor ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
sub ecx, dword [ebx*4 + 0x497360]
movzx eax, al
add ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 4]
xor esi, ecx
mov ecx, dword [edx + 0x44]
xor eax, esi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
sub ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
add ecx, dword [ebx*4 + 0x497360]
movzx eax, al
xor ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 8]
xor edi, ecx
mov ecx, dword [edx + 0x48]
sub eax, edi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
add ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
xor ecx, dword [ebx*4 + 0x497360]
movzx eax, al
sub ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0xc]
xor esi, ecx
mov ecx, dword [edx + 0x4c]
add eax, esi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
xor ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
sub ecx, dword [ebx*4 + 0x497360]
movzx eax, al
add ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x10]
xor edi, ecx
mov ecx, dword [edx + 0x50]
xor eax, edi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
sub ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
add ecx, dword [ebx*4 + 0x497360]
movzx eax, al
xor ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x14]
xor esi, ecx
mov ecx, dword [edx + 0x54]
sub eax, esi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
add ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
xor ecx, dword [ebx*4 + 0x497360]
movzx eax, al
sub ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x18]
xor edi, ecx
mov ecx, dword [edx + 0x58]
add eax, edi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
movzx ebx, bl
xor ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
sub ecx, dword [ebx*4 + 0x497360]
movzx eax, al
add ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x1c]
xor esi, ecx
mov ecx, dword [edx + 0x5c]
xor eax, esi
rol eax, cl
mov ebx, eax
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
shr ebx, 0x10
movzx ebx, bl
sub ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
add ecx, dword [ebx*4 + 0x497360]
movzx eax, al
xor ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x20]
xor edi, ecx
mov ecx, dword [edx + 0x60]
sub eax, edi
rol eax, cl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
add ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
xor ecx, dword [ebx*4 + 0x497360]
movzx eax, al
sub ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x24]
xor esi, ecx
mov ecx, dword [edx + 0x64]
add eax, esi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
xor ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
sub ecx, dword [ebx*4 + 0x497360]
movzx eax, al
add ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x28]
xor edi, ecx
mov ecx, dword [edx + 0x68]
xor eax, edi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
sub ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
add ecx, dword [ebx*4 + 0x497360]
movzx eax, al
xor ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x2c]
xor esi, ecx
mov ecx, dword [edx + 0x6c]
sub eax, esi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
add ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
xor ecx, dword [ebx*4 + 0x497360]
movzx eax, al
sub ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x30]
xor edi, ecx
mov ecx, dword [edx + 0x70]
add eax, edi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
xor ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
sub ecx, dword [ebx*4 + 0x497360]
movzx eax, al
add ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x34]
xor esi, ecx
mov ecx, dword [edx + 0x74]
xor eax, esi
rol eax, cl
mov ebx, eax
shr ebx, 0x10
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
movzx ebx, bl
sub ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
add ecx, dword [ebx*4 + 0x497360]
movzx eax, al
xor ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x38]
xor edi, ecx
mov ecx, dword [edx + 0x78]
sub eax, edi
rol eax, cl
mov ebx, eax
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
shr ebx, 0x10
movzx ebx, bl
add ecx, dword [ebx*4 + 0x496f60]
mov ebx, eax
shr ebx, 8
movzx eax, al
movzx ebx, bl
xor ecx, dword [ebx*4 + 0x497360]
sub ecx, dword [eax*4 + 0x497760]
mov eax, dword [edx + 0x3c]
xor esi, ecx
mov ecx, dword [edx + 0x7c]
add eax, esi
rol eax, cl
mov edx, eax
shr edx, 0x10
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ecx*4 + 0x496b60]
movzx edx, dl
xor ecx, dword [edx*4 + 0x496f60]
mov edx, eax
shr edx, 8
movzx edx, dl
sub ecx, dword [edx*4 + 0x497360]
movzx eax, al
add ecx, dword [eax*4 + 0x497760]
xor edi, ecx
push edi
call fcn.00447cd0
mov edi, dword [esp + 0x20]
push esi
mov dword [edi], eax
call fcn.00447cd0
add esp, 0x10
mov dword [edi + 4], eax
pop edi
pop esi
pop ebx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 4]
mov edx, dword [eax + 0x28]
xor edx, dword [ecx + 8]
add eax, 0x20
push ebx
mov ebx, dword [eax]
xor ebx, dword [ecx]
push ebp
mov ebp, dword [eax + 4]
xor ebp, dword [ecx + 4]
push esi
mov esi, dword [eax + 0xc]
xor esi, dword [ecx + 0xc]
push edi
xor esi, ebx
mov ecx, edx
xor ecx, ebp
mov edi, esi
and edi, ebp
xor edi, ebx
mov ebp, esi
or ebp, ebx
xor ebp, ecx
xor ecx, esi
xor esi, edx
or edx, edi
xor edx, ecx
mov dword [esp + 0x1c], edx
not ecx
or ecx, edi
mov edx, ecx
xor ecx, esi
or esi, ebp
xor edi, ecx
xor edx, esi
mov ebx, esi
xor ebx, edi
mov edi, dword [esp + 0x1c]
rol ebx, 0xd
rol edi, 3
xor edx, edi
xor edx, ebx
lea ecx, [ebx*8]
xor ecx, edi
xor ecx, ebp
rol ecx, 7
rol edx, 1
mov ebp, edx
shl ebp, 7
xor ebp, edi
mov edi, dword [eax + 0x18]
mov esi, edx
xor edx, dword [eax + 0x14]
xor esi, ebx
xor esi, ecx
xor ebp, ecx
xor ecx, dword [eax + 0x1c]
rol ebp, 0x16
rol esi, 5
xor esi, dword [eax + 0x10]
xor edi, ebp
not esi
mov ebx, esi
and esi, edx
not edi
xor edi, esi
or esi, ecx
xor edx, esi
xor esi, ebx
xor ecx, edi
or ebx, edx
or edi, esi
xor edx, ecx
and edi, ebx
xor esi, edx
and edx, edi
mov ebp, edi
and ebp, esi
xor edx, esi
xor ebp, ebx
rol edi, 0xd
rol ecx, 3
mov ebx, edi
xor edi, ebp
xor edi, ecx
lea esi, [ebx*8]
xor esi, edx
xor esi, ecx
rol esi, 7
rol edi, 1
mov edx, edi
shl edx, 7
xor edx, esi
xor edx, ecx
mov ecx, esi
xor esi, dword [eax + 0x2c]
xor ecx, ebx
xor ecx, edi
xor edi, dword [eax + 0x24]
rol edx, 0x16
xor edx, dword [eax + 0x28]
rol ecx, 5
xor ecx, dword [eax + 0x20]
mov ebx, ecx
and ecx, edx
xor ecx, esi
or esi, ebx
xor esi, edi
mov ebp, ecx
xor ebp, edi
xor edx, ebp
xor ebx, edx
mov edi, esi
or esi, ebx
xor esi, ecx
and ecx, edi
xor ebx, ecx
mov ecx, esi
xor ecx, ebx
xor edi, ecx
rol edx, 0xd
rol edi, 3
xor esi, edi
xor esi, edx
not ebx
lea ecx, [edx*8]
xor ecx, ebx
xor ecx, edi
rol ecx, 7
rol esi, 1
mov ebx, esi
shl ebx, 7
xor ebx, ecx
xor ebx, edi
mov edi, esi
xor esi, dword [eax + 0x34]
xor edi, ecx
xor ecx, dword [eax + 0x3c]
xor edi, edx
invalid