Function at 0x42d830
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x9f0
mov esi, esp
push 0x1000
call fcn.004083e0
add esp, 4
mov dword [esi + 0x14], eax
mov dword [esi + 0x734], 0xc9fae80a
mov dword [esi + 0x738], 0x234e5bb7
mov word [esi + 0x73c], 0xe304
mov dword [esi + 0x73e], 0
mov byte [esi + 0x742], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esi + eax + 0x734]
lea edi, [eax + 0x7b]
mov ecx, 0x84
sub ecx, eax
xor ecx, edi
and ecx, edx
xor ecx, edi
add cl, 0x99
mov byte [esi + eax + 0x734], cl
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
cmp eax, 0xf
jb 0x42d890
mov eax, dword [str.b9abc76ce53b6fc3a03566f8f764f5ea]
mov dword [esi + 4], eax
mov dword [esi + 0x404], 0x7012043a
mov dword [esi + 0x408], 0x56504b4b
mov dword [esi + 0x40c], 0x5a484457
mov dword [esi + 0x410], 0x31312c38
mov dword [esi + 0x414], 0x42617a
xor edx, edx
mov eax, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
or eax, 0xae2fd8b4
lea ebx, [edx + eax]
inc ebx
mov eax, ebx
and eax, 0xfffffffd
mov ecx, ebx
and ecx, 2
or ebx, 2
imul ebx, ecx
xor ecx, 2
imul ecx, eax
mov edi, edx
xor edi, 0xae2fd8b4
add edi, ebx
movzx eax, byte [esi + edx + 0x404]
add edi, ecx
mov ecx, edi
and ecx, eax
add ecx, ecx
mov ebx, ecx
xor ebx, edi
not edi
and edi, ecx
add ebx, eax
mov eax, dword [esi + 8]
add edi, edi
sub ebx, edi
add bl, 0x7c
mov byte [esi + edx + 0x404], bl
inc edx
dec eax
cmp edx, 0x14
jne 0x42d910
mov ecx, dword [str.HpOoIh__b8bb860e1ee2]
mov dword [esi + 0x9c], 0x42742b11
mov dword [esi + 0xa0], 0x5454274f
mov dword [esi + 0xa4], 0x6d22054d
mov dword [esi + 0xa8], 0x297e5f79
mov dword [esi + 0xac], 0x26292837
mov dword [esi + 0xb0], 0x243f262a
mov dword [esi + 0xb4], 0x6c44263a
mov dword [esi + 0xb8], 0x2a251150
mov dword [esi + 0xbc], 0x3d310676
mov dword [esi + 0xc0], 0x3432473c
mov dword [esi + 0xc4], 0x41642e3d
mov dword [esi + 0xc8], 0xe150b60
mov dword [esi + 0xcc], 0x609040f
mov dword [esi + 0xd0], 0x190d0216
mov dword [esi + 0xd4], 0xc0d0704
mov dword [esi + 0xd8], 0x1c102e0b
mov dword [esi + 0xdc], 0x69597d00
mov dword [esi + 0xe0], 0x16150c3c
mov dword [esi + 0xe4], 0x614c3e1b
mov dword [esi + 0xe8], 0xe9e9f43e
mov dword [esi + 0xec], 0xcb9abde0
mov dword [esi + 0xf0], 0xbb96fde9
mov dword [esi + 0xf4], 0xa1bc93bb
mov dword [esi + 0xf8], 0xbe98a3be
mov dword [esi + 0xfc], 0xd5dddf8c
mov word [esi + 0x100], 0x87ae
mov byte [esi + 0x102], 0x66
mov dword [esi + 0x103], 0
mov edx, 0x50634833
mov edi, 0xcc
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, edi
and eax, 0xa5
mov ebx, edx
and ebx, 0x5a
or ebx, eax
movzx eax, byte [esi + edx - 0x50634797]
xor ebx, 0xa5
and ebx, eax
or eax, edx
xor eax, ebx
inc al
mov byte [esi + edx - 0x50634797], al
inc edx
dec edi
cmp edx, 0x5063489e
jne 0x42daa0
movzx edx, byte [esi + 0x9c]
mov eax, dword [esi + 0x14]
test dl, dl
je 0x42dafb
lea edi, [esi + 0x9d]
mov eax, dword [esi + 0x14]
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [edi]
inc edi
test dl, dl
jne 0x42daf0
mov edi, eax
mov byte [eax], 0
movzx edx, byte [ecx]
test dl, dl
je 0x42db1d
inc ecx
mov eax, edi
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [ecx]
inc ecx
test dl, dl
jne 0x42db10
jmp 0x42db1f
mov eax, edi
mov edi, eax
mov byte [eax], 0
movzx ecx, byte [esi + 0x404]
test cl, cl
je 0x42db4d
lea edx, [esi + 0x405]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x42db40
jmp 0x42db4f
mov eax, edi
mov byte [eax], 0
mov edi, dword [esi + 4]
movzx ecx, byte [edi]
test cl, cl
mov edx, eax
je 0x42db6b
inc edi
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [edi]
inc edi
test cl, cl
jne 0x42db60
mov byte [edx], 0
movzx eax, byte [esi + 0x734]
test al, al
je 0x42db8b
lea ecx, [esi + 0x735]
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42db80
mov dword [esi + 4], edx
mov byte [edx], 0
push 0
call fcn.00441860
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov ecx, dword [ecx*4 + 0x44a934]
mov edx, dword [0x44a93c]
mov edi, edx
and edi, 0xcda1c3f7
add edi, edi
sub edi, edx
add ecx, edi
add ecx, 0x325e3c09
jmp ecx