Function at 0x42f500
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.0040cb10
add esp, 4
mov dword [esi + 0x18], eax
mov dword [esi + 0x734], 0x4716dcfe
mov dword [esi + 0x738], 0x355a6955
mov word [esi + 0x73c], 0xf110
mov dword [esi + 0x73e], 0
mov eax, 0x7e
mov ecx, 0x66f1bc81
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esi + eax + 0x6b6]
mov edi, ecx
or edi, edx
not edx
or edx, eax
and edx, edi
mov edi, 0x2b8ae88
sub edi, edx
mov edx, edi
and edx, 1
xor edi, 1
lea edx, [edi + edx*2]
mov byte [esi + eax + 0x6b6], dl
inc eax
dec ecx
cmp eax, 0x8c
jne 0x42f560
mov eax, dword [str.7567fff5468f5b682780aea4c2eb6266]
mov dword [esi], eax
mov dword [esi + 0x404], 0xa8968c6e
mov dword [esi + 0x408], 0xcac8c7c7
mov dword [esi + 0x40c], 0xeec0fccb
mov dword [esi + 0x410], 0xf9f9f4c0
mov dword [esi + 0x414], 0x46a98e
mov ecx, 0x6f390516
mov edx, 0x10c6fae9
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esi + ecx - 0x6f390112]
mov edi, ebx
not edi
lea eax, [ecx - 0x6f390500]
or eax, edi
mov edi, edx
or edi, ebx
and edi, ecx
and edi, eax
add edi, edi
sub ebx, edi
add ebx, ecx
mov eax, ebx
xor eax, 0x6e
or ebx, 0x11
and ebx, eax
add ebx, ebx
sub ebx, eax
mov byte [esi + ecx - 0x6f390112], bl
inc ecx
dec edx
cmp ecx, 0x6f39052a
jne 0x42f5e0
mov ecx, dword [str.hRjzG3__GAS]
mov dword [esi + 0x9c], 0xf2ac8b81
mov dword [esi + 0xa0], 0xfcfc8ff7
mov dword [esi + 0xa4], 0xe5b28df5
mov dword [esi + 0xa8], 0xf996b799
mov dword [esi + 0xac], 0xfec9c8cf
mov dword [esi + 0xb0], 0xccc7ceca
mov dword [esi + 0xb4], 0xa44ceeca
mov dword [esi + 0xb8], 0xdadd81a0
mov dword [esi + 0xbc], 0xe5e1feae
mov dword [esi + 0xc0], 0xdce2afe4
mov dword [esi + 0xc4], 0xd1eca6e5
mov dword [esi + 0xc8], 0xa6ad9bf0
mov dword [esi + 0xcc], 0x9ea99ca7
mov dword [esi + 0xd0], 0xa99592ae
mov dword [esi + 0xd4], 0x2fb6b29a
mov dword [esi + 0xd8], 0xbeeac7f3
mov dword [esi + 0xdc], 0xec8db8b7
mov dword [esi + 0xe0], 0xb6e8cffe
mov dword [esi + 0xe4], 0xcfb6bf83
mov dword [esi + 0xe8], 0x81b3a6f0
mov dword [esi + 0xec], 0xf9c1ccf4
mov dword [esi + 0xf0], 0xc9c8cfce
mov dword [esi + 0xf4], 0xcde2d012
mov dword [esi + 0xf8], 0xe5d8c3cf
mov byte [esi + 0xfc], 4
mov dword [esi + 0x100], 0
mov dword [esi + 0xfd], 0
mov edx, 0x17
mov edi, 0x68
nop
nop
nop
nop
mov eax, edi
and eax, 0xdb
mov ebx, edx
and ebx, 0x24
or ebx, eax
xor bl, byte [esi + edx + 0x85]
xor bl, 0xdb
add bl, 0xd
mov byte [esi + edx + 0x85], bl
inc edx
dec edi
cmp edx, 0x7f
jne 0x42f740
movzx edx, byte [esi + 0x9c]
mov eax, dword [esi + 0x18]
mov ebx, eax
test dl, dl
je 0x42f79b
lea edi, [esi + 0x9d]
mov ebx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], dl
inc ebx
movzx edx, byte [edi]
inc edi
test dl, dl
jne 0x42f790
mov byte [ebx], 0
movzx edx, byte [ecx]
test dl, dl
je 0x42f7bd
inc ecx
mov eax, dword [esi]
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], dl
inc ebx
movzx edx, byte [ecx]
inc ecx
test dl, dl
jne 0x42f7b0
jmp 0x42f7bf
mov eax, dword [esi]
mov byte [ebx], 0
movzx ecx, byte [esi + 0x404]
test cl, cl
je 0x42f7eb
lea edx, [esi + 0x405]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x42f7e0
mov byte [ebx], 0
movzx ecx, byte [eax]
test cl, cl
je 0x42f80b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x42f800
mov byte [ebx], 0
movzx eax, byte [esi + 0x734]
test al, al
je 0x42f82b
lea ecx, [esi + 0x735]
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42f820
mov byte [ebx], 0
push 0
call fcn.004445c0
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44e854]