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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x1b0
mov esi, esp
push eax
sub esp, 8
mov dword [esi + 0xe0], esp
sub esp, 0xc
mov dword [esi + 0xe4], esp
sub esp, 0xc
mov dword [esi + 0xe8], esp
sub esp, 0x10
mov dword [esi + 0x68], esp
push eax
mov dword [esi + 0x8c], esp
push eax
mov dword [esi + 0x30], esp
push eax
mov dword [esi + 0x84], esp
sub esp, 0x10
mov dword [esi + 0x34], esp
sub esp, 0x14
mov dword [esi + 0xec], esp
sub esp, 8
mov dword [esi + 0xf0], esp
sub esp, 0x14
mov dword [esi + 0xf4], esp
sub esp, 8
mov dword [esi + 0xc], esp
sub esp, 8
mov dword [esi + 0xac], esp
sub esp, 0x10
mov dword [esi + 0xb4], esp
sub esp, 0x10
mov dword [esi + 0x28], esp
push eax
mov dword [esi + 0x110], esp
sub esp, 0x10
mov dword [esi + 0x78], esp
sub esp, 8
mov dword [esi + 0x5c], esp
sub esp, 0x1c
mov dword [esi + 0x90], esp
sub esp, 0x104
mov dword [esi + 0x48], esp
push eax
mov dword [esi + 0xf8], esp
sub esp, 0xc
mov dword [esi + 0xb0], esp
sub esp, 0x200
mov dword [esi + 0x2c], esp
push eax
mov dword [esi + 0x114], esp
sub esp, 0xc
mov dword [esi + 0x7c], esp
sub esp, 0x200
mov dword [esi + 0x4c], esp
push eax
mov dword [esi + 0x118], esp
sub esp, 0x10
mov dword [esi + 0x70], esp
sub esp, 0x10
mov dword [esi + 0x50], esp
push eax
mov dword [esi + 0x11c], esp
sub esp, 0x10
mov dword [esi + 0x38], esp
sub esp, 0xac
mov dword [esi + 0xa0], esp
sub esp, 0x10
mov dword [esi + 0x120], esp
sub esp, 0x10
mov dword [esi + 0x3c], esp
sub esp, 8
mov dword [esi + 0x134], esp
sub esp, 8
mov dword [esi + 0x130], esp
sub esp, 0xc
mov dword [esi + 0x20], esp
sub esp, 0xc
mov dword [esi + 0xfc], esp
sub esp, 0xc
mov dword [esi + 0x94], esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x128], eax
mov esp, eax
push eax
sub esp, 8
mov dword [esi + 0x124], esp
push eax
mov dword [esi + 0x54], esp
sub esp, 0x10
mov dword [esi + 0xb8], esp
sub esp, 0x10
mov dword [esi + 0x58], esp
sub esp, 0x10
mov dword [esi + 0x40], esp
sub esp, 0x30
mov dword [esi + 0x60], esp
sub esp, 0x30
mov dword [esi + 0x24], esp
sub esp, 0x10
mov dword [esi + 0xbc], esp
sub esp, 0x2c
mov dword [esi + 0x88], esp
push eax
mov dword [esi + 0xa4], esp
sub esp, 0x14
mov dword [esi + 0x44], esp
sub esp, 0x10
mov dword [esi + 0x80], esp
sub esp, 0xc
mov dword [esi + 0x74], esp
sub esp, 0x18
mov dword [esi + 0x98], esp
sub esp, 8
mov dword [esi + 0x9c], esp
sub esp, 0x348
mov dword [esi + 0x100], esp
sub esp, 0xdc
mov dword [esi + 0x10c], esp
sub esp, 0xc
mov dword [esi + 0x104], esp
sub esp, 0xc
mov dword [esi + 0x108], esp
sub esp, 0x18
mov dword [esi + 0x6c], esp
sub esp, 0xc
mov dword [esi + 0x12c], esp
push 0x1000
call fcn.00408000
add esp, 4
mov dword [esi + 0xa8], eax
mov dword [esi + 0xc3], 0xb6659979
mov dword [esi + 0xc7], 0xb0e1eca6
mov word [esi + 0xcb], 0x7c5b
mov eax, 0xa5568d9b
mov edx, 0x5aa97264
nop
mov dword [esi + 0x14], edx
movzx edi, byte [esi + eax + 0x5aa97328]
mov ebx, eax
and ebx, 0x854001af
mov edx, dword [esi + 0x14]
and edx, 0x42800210
or edx, ebx
xor edx, edi
xor edx, 0x9d6971ef
mov ecx, dword [esi + 0x14]
add ecx, 0xa5568e00
and ecx, edi
or edx, ecx
not edx
lea ebx, [ecx + edx]
add edx, ecx
add edx, 0x27
mov edi, ebx
and ebx, 1
and edx, 0xfe
or edx, ebx
not edi
and edi, 1
lea ecx, [edx + edi*2]
mov edx, dword [esi + 0x14]
mov byte [esi + eax + 0x5aa97328], cl
inc eax
dec edx
cmp eax, 0xa5568da5
jne 0x429320
mov eax, dword [str.7567fff5468f5b682780aea4c2eb6266]
mov dword [esi + 0x14], eax
mov dword [esi + 0xcd], 0x6b372bcf
mov dword [esi + 0xd1], 0x150d1416
mov dword [esi + 0xd5], 0x11d1b0a
mov dword [esi + 0xd9], 0x1a1c1b15
mov word [esi + 0xdd], 0x466f
mov byte [esi + 0xdf], 0xa7
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x3d
xor cl, byte [esi + eax + 0xcd]
add cl, 0x18
mov byte [esi + eax + 0xcd], cl
inc eax
cmp eax, 0x13
jne 0x4293d0
mov eax, dword [str.hRjzG3__KASTA]
mov dword [esi + 0x10], eax
mov dword [esi + 0x138], 0x7284a5a7
mov dword [esi + 0x13c], 0x6464a971
mov dword [esi + 0x140], 0x9baeb77b
mov dword [esi + 0x144], 0x7f92b197
mov dword [esi + 0x148], 0x767b7861
mov dword [esi + 0x14c], 0x746d7676
mov dword [esi + 0x150], 0xbcd4766e
mov dword [esi + 0x154], 0x9a976340
mov dword [esi + 0x158], 0x8b837642
mov dword [esi + 0x15c], 0x84864984
mov dword [esi + 0x160], 0x4f549e8b
mov dword [esi + 0x164], 0x9e879d70
mov dword [esi + 0x168], 0x969b9499
mov dword [esi + 0x16c], 0x8f9f928a
mov dword [esi + 0x170], 0x9c9f918c
mov dword [esi + 0x174], 0xaca05ea5
mov dword [esi + 0x178], 0x676b0fb0
mov dword [esi + 0x17c], 0xa6a7bc44
mov dword [esi + 0x180], 0x6f7c4ead
mov dword [esi + 0x184], 0xbfbba452
mov dword [esi + 0x188], 0x53766fb0
mov dword [esi + 0x18c], 0x7b7ababd
mov dword [esi + 0x190], 0x6f6c7d68
mov dword [esi + 0x194], 0xe681512
mov dword [esi + 0x198], 0x232f2904
mov word [esi + 0x19c], 0x912
mov byte [esi + 0x19e], 0x6a
mov edi, 0xd74324e4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esi + edi + 0x28bcdc54]
mov edx, edi
and edx, eax
mov ecx, edx
and ecx, 2
mov ebx, edx
or edx, 2
imul edx, ecx
xor ecx, 2
and ebx, 0xfffffffd
imul ebx, ecx
add edx, ebx
add eax, edi
mov ecx, edx
xor ecx, eax
not edx
and edx, eax
add edx, edx
sub edx, ecx
mov eax, edx
not eax
and eax, 0x21
and edx, 0xde
sub edx, eax
inc dl
mov byte [esi + edi + 0x28bcdc54], dl
inc edi
cmp edi, 0xd743254b
jne 0x429510
movzx eax, byte [esi + 0x138]
mov ecx, dword [esi + 0xa8]
mov edi, ecx
test al, al
je 0x42958b
lea edx, [esi + 0x139]
mov edi, ecx
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [edx]
inc edx
test al, al
jne 0x429580
mov byte [edi], 0
mov ecx, dword [esi + 0x10]
movzx eax, byte [ecx]
test al, al
je 0x4295ab
inc ecx
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4295a0
mov byte [edi], 0
movzx eax, byte [esi + 0xcd]
test al, al
je 0x4295cb
lea ecx, [esi + 0xce]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4295c0
mov byte [edi], 0
mov ecx, dword [esi + 0x14]
movzx eax, byte [ecx]
test al, al
je 0x4295eb
inc ecx
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4295e0
mov byte [edi], 0
movzx eax, byte [esi + 0xc3]
test al, al
je 0x42960b
lea ecx, [esi + 0xc4]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x429600
mov byte [edi], 0
push 0
call fcn.0043a770
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov ecx, dword [ecx*4 + 0x443410]
mov edx, 0xa589d7ed
xor edx, dword [0x443418]
add ecx, edx
inc ecx
jmp ecx