Function at 0x42c720
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xa00
mov esi, esp
push 0x1000
call fcn.004086e0
add esp, 4
mov dword [esi + 0x744], 0xd1e6f08e
mov dword [esi + 0x748], 0xf72a3f23
mov word [esi + 0x74c], 0x8fec
mov dword [esi + 0x74e], 0
mov edi, 0x88f47a21
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esi + edi + 0x770b8d23]
mov edx, ecx
and edx, edi
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, edi
add cl, 0x5b
mov byte [esi + edi + 0x770b8d23], cl
inc edi
cmp edi, 0x88f47a2f
jne 0x42c770
mov dword [esi + 0x2c], eax
mov eax, dword [0x345684]
mov dword [esi + 0x450], 0x98f6fcde
mov dword [esi + 0x454], 0xbab8a7a7
mov dword [esi + 0x458], 0xbea0acbb
mov dword [esi + 0x45c], 0xa9a9b4a0
mov word [esi + 0x460], 0xf99e
mov byte [esi + 0x462], 0xe6
mov word [esi + 0x463], 0
mov ecx, 0x49779bce
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esi + ecx - 0x4977977e]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0xfa
mov byte [esi + ecx - 0x4977977e], dl
inc ecx
cmp ecx, 0x49779be3
jne 0x42c7f0
mov ecx, dword [0x345680]
mov dword [esi + 0xac], 0x6e24c7d9
mov dword [esi + 0xb0], 0xc14c36b
mov dword [esi + 0xb4], 0x15de3575
mov dword [esi + 0xb8], 0x13adb21
mov dword [esi + 0xbc], 0x1201007b
mov dword [esi + 0xc0], 0x7c7b0206
mov dword [esi + 0xc4], 0xb4947a7e
mov dword [esi + 0xc8], 0xe0549a8
mov dword [esi + 0xcc], 0x75796aba
mov dword [esi + 0xd0], 0x6c76a374
mov dword [esi + 0xd4], 0xb9541265
mov dword [esi + 0xd8], 0x62156f58
mov dword [esi + 0xdc], 0x72617463
mov dword [esi + 0xe0], 0x216d6662
mov dword [esi + 0xe4], 0x544d5b5c
mov dword [esi + 0xe8], 0x54484a57
mov dword [esi + 0xec], 0x8191bd28
mov dword [esi + 0xf0], 0x4a552c74
mov dword [esi + 0xf4], 0x998c625f
mov dword [esi + 0xf8], 0x4141347a
mov dword [esi + 0xfc], 0x67967d48
mov dword [esi + 0x100], 0x7e923d41
mov dword [esi + 0x104], 0x797c6f83
mov dword [esi + 0x108], 0x7250877a
mov dword [esi + 0x10c], 0x9d9d9364
mov word [esi + 0x110], 0x638a
mov byte [esi + 0x112], 0x42
mov dword [esi + 0x113], 0
mov edx, 0xac031929
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esi + edx + 0x53fce783]
xor ebx, edx
mov edi, 0x76
sub edi, ebx
add ebx, 0x89
and edi, 0x56
and ebx, 0xa9
sub ebx, edi
mov byte [esi + edx + 0x53fce783], bl
inc edx
cmp edx, 0xac031994
jne 0x42c940
movzx edx, byte [esi + 0xac]
mov ebx, dword [esi + 0x2c]
test dl, dl
je 0x42c99b
lea edi, [esi + 0xad]
mov ebx, dword [esi + 0x2c]
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], dl
inc ebx
movzx edx, byte [edi]
inc edi
test dl, dl
jne 0x42c990
mov byte [ebx], 0
movzx edx, byte [ecx]
test dl, dl
mov edi, ebx
je 0x42c9bb
inc ecx
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], dl
inc edi
movzx edx, byte [ecx]
inc ecx
test dl, dl
jne 0x42c9b0
mov byte [edi], 0
movzx ecx, byte [esi + 0x450]
test cl, cl
je 0x42c9db
lea edx, [esi + 0x451]
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x42c9d0
mov byte [edi], 0
movzx ecx, byte [eax]
test cl, cl
je 0x42c9fb
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x42c9f0
mov byte [edi], 0
movzx eax, byte [esi + 0x744]
test al, al
je 0x42ca1b
lea ecx, [esi + 0x745]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42ca10
mov byte [edi], 0
push 0
call fcn.0043fcd0
add esp, 4
mov ecx, eax
xor eax, eax
test ecx, ecx
setne al
mov eax, dword [eax*4 + 0x348734]
mov edx, 0x8224a453
xor edx, dword [0x34873c]
add eax, edx
inc eax
jmp eax