Function at 0x18003c630
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
push rbp
push rbx
push r12
push r13
push r14
lea rbp, [r11 - 0x1b8]
sub rsp, 0x290
mov rax, qword [rbp + 0x1e0]
xor r14b, r14b
mov rbx, r8
mov r13, rcx
mov r12d, dword [rax]
test r9d, r9d
je 0x18003c9fd
mov qword [r11 + 8], rsi
mov qword [r11 - 0x30], rdi
mov qword [r11 - 0x38], r15
mov r15, qword [rbp + 0x1e8]
mov eax, r9d
movaps xmmword [r11 - 0x48], xmm6
mov qword [rbp + 0x1c8], rax
nop
mov edx, dword [rbx]
mov ecx, r12d
mov r8, qword [rbx + 8]
cmp edx, r12d
mov ebx, r12d
cmovbe ebx, edx
sub ecx, edx
cmp edx, r12d
cmovbe r12d, ecx
cmp ebx, 0xd
jbe 0x18003c9bd
xor esi, esi
lea edi, [rbx - 0xd]
test edi, edi
je 0x18003c9bd
lea eax, [rsi + 1]
mov r11, r8
nop word [rax + rax]
movzx r9d, byte [r11]
lea ecx, [r9 - 0x41]
test cl, 0xdf
jne 0x18003c72a
mov ecx, eax
movzx edx, byte [rcx + r8]
sub dl, 0x54
test dl, 0xdf
jne 0x18003c724
lea ecx, [rax + 4]
cmp byte [rcx + r8], 0x20
jne 0x18003c724
lea ecx, [rax + 5]
cmp byte [rcx + r8], 1
jne 0x18003c724
lea ecx, [rax + 6]
cmp byte [rcx + r8], 0xd
jne 0x18003c724
lea ecx, [rax + 7]
cmp byte [rcx + r8], 0x25
jne 0x18003c724
lea ecx, [rax + 8]
movzx r10d, byte [rcx + r8]
lea ecx, [r10 + 8]
cmp ebx, ecx
jae 0x18003c78f
cmp r9b, 0x61
je 0x18003c730
cmp r9b, 0x41
jne 0x18003c77b
mov ecx, eax
movzx edx, byte [rcx + r8]
sub dl, 0x54
test dl, 0xdf
jne 0x18003c77b
lea ecx, [rax + 3]
cmp byte [rcx + r8], 0x20
jne 0x18003c77b
lea ecx, [rax + 4]
cmp byte [rcx + r8], 1
jne 0x18003c77b
lea ecx, [rax + 5]
cmp byte [rcx + r8], 0xd
jne 0x18003c77b
lea ecx, [rax + 6]
cmp byte [rcx + r8], 0x25
jne 0x18003c77b
lea ecx, [rax + 7]
movzx r9d, byte [rcx + r8]
lea ecx, [r9 + 8]
cmp ebx, ecx
jae 0x18003c893
inc esi
inc eax
inc r11
cmp esi, edi
jb 0x18003c6d0
jmp 0x18003c9bd
lea rdi, [r13 + 0x18]
lea rdx, [rbp + 0x60]
mov rcx, rdi
sub rdx, rdi
nop dword [rax]
movzx eax, byte [rcx]
mov byte [rdx + rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x18003c7a0
lea edx, [rsi + 0xa]
mov rcx, rdi
add rdx, r8
mov rbx, r10
mov r8, r10
call fcn.18009fc20
mov byte [rbx + r13 + 0x18], 0
mov rax, r15
cmp qword [r15 + 0x18], 0x10
jb 0x18003c7d5
mov rax, qword [r15]
lea r9, [rbp + 0x60]
mov qword [rsp + 0x20], rax
mov r8, rdi
lea rdx, str.http:__www.aol.com_prop__SN_sOSN_sAOLVER_s
lea rcx, [rsp + 0x50]
call fcn.18000f45c
lea rdx, [rsp + 0x50]
mov rcx, r13
call fcn.18003cab0
cmp byte [0x18010a364], 0
je 0x18003c9ba
mov eax, dword [0x18010bb98]
mov rcx, qword gs:[0x58]
movdqa xmm6, xmmword [0x1800ec800]
mov edx, 4
mov dword [rsp + 0x40], 0x19bcc60d
mov rcx, qword [rcx + rax*8]
mov eax, dword [rdx + rcx]
cmp dword [0x18010d298], eax
jg 0x18003ca5f
cmp byte [0x180106794], 0
lea rdi, [0x180106780]
je 0x18003c889
xor edx, edx
movabs r15, 0xd993efbb19cfe32d
nop
movzx ecx, dl
mov rax, r15
and cl, 7
shl cl, 3
shr rax, cl
xor byte [rdx + rdi], al
inc rdx
cmp rdx, 0x14
jb 0x18003c860
mov r15, qword [rbp + 0x1e8]
mov byte [0x180106794], 0
lea r8, [rsp + 0x50]
jmp 0x18003c9ad
lea rdi, [r13 + 0x18]
lea rdx, [rsp + 0x50]
mov rcx, rdi
sub rdx, rdi
movzx eax, byte [rcx]
mov byte [rdx + rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x18003c8a2
lea edx, [rsi + 0xa]
mov rcx, rdi
add rdx, r8
mov rbx, r9
mov r8, r9
call fcn.18009fc20
lea rdx, [rsp + 0x50]
mov byte [rbx + r13 + 0x18], 0
mov rcx, rdi
call fcn.1800a8764
test eax, eax
je 0x18003c9bd
cmp qword [r15 + 0x18], 0x10
mov rax, r15
jb 0x18003c8ec
mov rax, qword [r15]
lea r9, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov r8, rdi
lea rdx, str.http:__www.aol.com_prop__SN_sOSN_sAOLVER_s
lea rcx, [rbp + 0x60]
call fcn.18000f45c
lea rdx, [rbp + 0x60]
mov rcx, r13
call fcn.18003cab0
cmp byte [0x18010a364], 0
je 0x18003c9ba
mov eax, dword [0x18010bb98]
mov rcx, qword gs:[0x58]
movdqa xmm6, xmmword [0x1800ec800]
mov edx, 4
mov dword [rsp + 0x40], 0x19bcc60d
mov rcx, qword [rcx + rax*8]
mov eax, dword [rdx + rcx]
cmp dword [0x18010d290], eax
jg 0x18003ca11
cmp byte [0x1801067b4], 0
lea rdi, [0x1801067a0]
je 0x18003c9a9
xor edx, edx
movabs r15, 0xd993efbb19cfe32d
nop word [rax + rax]
movzx ecx, dl
mov rax, r15
and cl, 7
shl cl, 3
shr rax, cl
xor byte [rdx + rdi], al
inc rdx
cmp rdx, 0x14
jb 0x18003c980
mov r15, qword [rbp + 0x1e8]
mov byte [0x1801067b4], 0
lea r8, [rbp + 0x60]
mov rdx, rdi
mov ecx, 4
call fcn.18006a848
mov r14b, 1
mov rbx, qword [rbp + 0x1d0]
add rbx, 0x10
sub qword [rbp + 0x1c8], 1
mov qword [rbp + 0x1d0], rbx
jne 0x18003c690
movaps xmm6, xmmword [rsp + 0x270]
mov r15, qword [rsp + 0x280]
mov rdi, qword [rsp + 0x288]
mov rsi, qword [rsp + 0x2c0]
movzx eax, r14b
add rsp, 0x290
pop r14
pop r13
pop r12
pop rbx
pop rbp
ret
lea rcx, [0x18010d290]
call fcn.18009d704
cmp dword [0x18010d290], 0xffffffff
jne 0x18003c959
mov eax, dword [rsp + 0x40]
lea rcx, [0x1800ce6b0]
mov dword [0x1801067b0], eax
mov byte [0x1801067b4], 1
movaps xmmword [0x1801067a0], xmm6
call fcn.18009d564
lea rcx, [0x18010d290]
call fcn.18009d6a4
jmp 0x18003c959
lea rcx, [0x18010d298]
call fcn.18009d704
cmp dword [0x18010d298], 0xffffffff
jne 0x18003c843
mov eax, dword [rsp + 0x40]
lea rcx, [0x1800ce6d0]
mov dword [0x180106790], eax
mov byte [0x180106794], 1
movaps xmmword [0x180106780], xmm6
call fcn.18009d564
lea rcx, [0x18010d298]
call fcn.18009d6a4
jmp 0x18003c843