Function at 0x424020
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1808
call fcn.00612c90
mov eax, dword [0x6ffe74]
xor eax, ebp
mov dword [ebp - 8], eax
and dword [ebp - 0x1800], 0
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
push edi
push esi
call fcn.00643470
pop ecx
cmp eax, 1
jb 0x42434d
push 0x6c63d0
lea eax, [ebp - 0x1800]
push esi
push eax
call fcn.00649a00
add esp, 0xc
test eax, eax
jne 0x42434d
cmp dword [ebp - 0x1800], eax
je 0x42434d
push dword [ebp - 0x1800]
lea eax, [ebp - 0x85c]
push 0x3e8
push eax
call fcn.006494dd
add esp, 0xc
test eax, eax
je 0x42433c
lea edi, [ebp - 0x85c]
lea eax, [ebp - 0x85c]
push eax
call fcn.00643470
pop ecx
cmp byte [eax + edi - 1], 0xa
jne 0x4240dc
lea eax, [ebp - 0x85c]
push eax
call fcn.00643470
dec eax
pop ecx
cmp eax, 0x400
jae 0x424360
mov byte [ebp + eax - 0x85c], 0
lea eax, [ebp - 0x85c]
push eax
lea eax, [ebp - 0x45c]
push 0x3e8
push eax
call fcn.006494f3
add esp, 0xc
lea eax, [ebp - 0x45c]
push eax
call fcn.00643470
pop ecx
inc eax
push eax
lea eax, [ebp - 0x45c]
push eax
call fcn.0064ffd4
lea ecx, [ebp - 0x45c]
call fcn.004047e7
lea eax, [ebp - 0x45c]
push eax
call fcn.00643470
add esp, 0xc
cmp eax, 2
jb 0x42431a
cmp byte [ebp - 0x45c], 0x5b
jne 0x424174
lea eax, [ebp - 0x45c]
push eax
call fcn.00643470
pop ecx
cmp byte [ebp + eax - 0x45d], 0x5d
jne 0x424174
xor eax, eax
mov byte [ebp - 0x102c], al
mov byte [ebp - 0xc44], al
mov byte [ebp - 0x1414], al
mov byte [ebp - 0x17fc], al
jmp 0x42431a
push str.host
call fcn.00643470
pop ecx
push eax
lea eax, [ebp - 0x45c]
push str.host
push eax
call fcn.0065106c
add esp, 0xc
test eax, eax
jne 0x4241c2
lea eax, [ebp - 0x85c]
push 0x3d
push eax
call fcn.006393d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42431a
inc esi
mov ecx, esi
call fcn.004047e7
lea eax, [ebp - 0x17fc]
jmp 0x42420e
push str.user
call fcn.00643470
pop ecx
push eax
lea eax, [ebp - 0x45c]
push str.user
push eax
call fcn.0065106c
add esp, 0xc
test eax, eax
jne 0x424222
lea eax, [ebp - 0x85c]
push 0x3d
push eax
call fcn.006393d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42431a
inc esi
mov ecx, esi
call fcn.004047e7
lea eax, [ebp - 0x1414]
push esi
push 0x3e8
push eax
call fcn.006494f3
add esp, 0xc
jmp 0x42431a
push 0x6c9d7c
call fcn.00643470
pop ecx
push eax
lea eax, [ebp - 0x45c]
push 0x6c9d7c
push eax
call fcn.0065106c
add esp, 0xc
test eax, eax
jne 0x42431a
lea eax, [ebp - 0x85c]
push 0x3d
push eax
call fcn.006393d0
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42431a
inc esi
mov ecx, esi
call fcn.004047e7
push esi
lea eax, [ebp - 0xc44]
push 0x3e8
push eax
call fcn.006494f3
add esp, 0xc
mov dword [ebp - 0x74], 0x160e0501
lea eax, [ebp - 0x6a]
mov dword [ebp - 0x70], 0x6060205
mov word [ebp - 0x6c], 0x102
push 0x5a
push 0
push eax
call fcn.006390b0
add esp, 0xc
lea eax, [ebp - 0xc44]
xor esi, esi
push eax
call fcn.00643470
pop ecx
lea ecx, [eax - 1]
test ecx, ecx
je 0x4242e6
xor edx, edx
mov dword [ebp - 0x1804], 0xa
mov eax, esi
div dword [ebp - 0x1804]
mov al, byte [ebp + edx - 0x74]
xor al, byte [ebp + esi - 0xc43]
mov byte [ebp + esi - 0x102c], al
inc esi
cmp esi, ecx
jb 0x4242bb
push 0xffffffffffffffff
mov byte [ebp + esi - 0x102c], 0
lea eax, [ebp - 0x102c]
mov esi, 0x6c5bb9
mov ecx, ebx
push esi
push eax
lea eax, [ebp - 0x1414]
push eax
lea eax, [ebp - 0x17fc]
push eax
push esi
push 0x13b
push 4
call fcn.0043ee6b
push dword [ebp - 0x1800]
lea eax, [ebp - 0x85c]
push 0x3e8
push eax
call fcn.006494dd
add esp, 0xc
test eax, eax
jne 0x4240a7
push dword [ebp - 0x1800]
call fcn.00649273
xor eax, eax
pop ecx
inc eax
jmp 0x42434f
xor eax, eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.006122f0
leave
ret 4
call fcn.00612782
int3