Function at 0x1800476b0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xd0
mov qword [rbp - 0x39], 0xfffffffffffffffe
mov qword [rsp + 0x120], rbx
mov rax, qword [0x180208090]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov r12, r9
mov qword [rbp - 0x69], r9
mov r15, rdx
mov r13, rcx
xor esi, esi
mov dword [rbp - 0x79], esi
mov rcx, rdx
call fcn.180005c00
test al, al
je 0x180047716
mov rdx, r15
mov rcx, r12
call fcn.18000a410
mov al, 1
jmp 0x180047a0b
mov rcx, r13
call fcn.180005c00
test al, al
jne 0x180047a09
lea rdx, str.Shlwapi.dll
lea rcx, [rbp - 0x59]
call fcn.180003bb0
nop
call fcn.1800a6010
mov rcx, rax
lea rdx, [rbp - 0x59]
call fcn.1800a60e0
mov rbx, rax
lea rcx, [rbp - 0x59]
call fcn.180003b80
test rbx, rbx
je 0x180047a09
lea rdx, str.UrlEscapeA
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp - 0x61], rax
test rax, rax
je 0x180047a09
lea rcx, [rbp - 1]
call fcn.18000a650
nop
mov rcx, r13
call fcn.180006030
mov rbx, rax
mov qword [rbp - 0x71], rax
mov rcx, r15
call fcn.180006030
mov qword [rbp - 9], rax
mov r14d, esi
test eax, eax
jle 0x1800477f7
mov r12, rsi
mov rsi, rax
nop dword [rax]
mov eax, r14d
cdq
idiv ebx
movsxd rbx, edx
mov rdx, r12
mov rcx, r15
call fcn.18000fda0
movzx edi, byte [rax]
mov rdx, rbx
mov rcx, r13
call fcn.18000fda0
xor dil, byte [rax]
movzx edx, dil
lea rcx, [rbp - 1]
call fcn.1800355b0
inc r14d
inc r12
cmp r14d, esi
mov rbx, qword [rbp - 0x71]
jl 0x1800477b0
xor esi, esi
mov r12, qword [rbp - 0x69]
lea rcx, [rbp - 0x59]
call fcn.18000a650
mov r14, rax
mov edi, 1
mov dword [rbp - 0x79], edi
lea rcx, [rbp - 1]
call fcn.180005c00
test al, al
jne 0x180047853
lea rcx, [rbp - 1]
call fcn.180006030
mov rbx, rax
lea rcx, [rbp - 1]
call fcn.18000a3b0
mov rdx, rax
mov r8d, ebx
lea rcx, [rbp - 0x31]
call fcn.18008d180
nop
mov rdx, rax
lea rcx, [rbp - 0x59]
call fcn.18000a4e0
nop
lea rcx, [rbp - 0x31]
call fcn.18000a4b0
mov rdx, r14
lea rcx, [rbp - 1]
call fcn.18000a4e0
and edi, 0xfffffffe
mov dword [rbp - 0x79], edi
lea rcx, [rbp - 0x59]
call fcn.18000a4b0
mov qword [rbp - 9], rsi
mov qword [rbp - 9], rsi
lea rcx, [rbp - 1]
call fcn.180006030
inc eax
lea eax, [rax + rax*2]
mov dword [rbp - 0x11], eax
mov ecx, eax
call fcn.1800d85d0
mov rbx, rax
mov r15, rax
mov qword [rbp - 9], rax
mov r8d, dword [rbp - 0x11]
xor edx, edx
mov rcx, rax
call fcn.1800f7810
lea rcx, [rbp - 1]
call fcn.18000a3b0
mov rcx, rax
mov r9d, 0x3000
lea r8, [rbp - 0x11]
mov rdx, rbx
mov r13, qword [rbp - 0x61]
call r13
test eax, eax
js 0x1800479e9
mov rdx, rbx
lea rcx, [rbp - 1]
call fcn.18000ae50
mov rbx, rsi
lea rax, [0x18019e460]
inc rbx
cmp byte [rbx + rax], 0
jne 0x1800478e4
mov rdi, rsi
lea rcx, [0x18019e474]
inc rdi
cmp byte [rdi + rcx], 0
jne 0x1800478f7
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp - 1]
call fcn.180015f70
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x180047967
nop dword [rax + rax]
lea rcx, [0x18019e474]
call fcn.1800099a0
mov rcx, rax
call fcn.1800038c0
mov qword [rsp + 0x20], rax
mov r8, rbx
mov rdx, r14
lea rcx, [rbp - 1]
call fcn.1800ad5d0
add rsi, rdi
mov r8, rsi
lea rdx, [0x18019e460]
lea rcx, [rbp - 1]
call fcn.180015f70
mov r14, rax
cmp rax, 0xffffffffffffffff
jne 0x180047920
lea rcx, [rbp - 1]
call fcn.180006030
inc eax
lea eax, [rax + rax*2]
mov dword [rbp - 0x11], eax
mov ecx, eax
call fcn.1800d85d0
mov rbx, rax
mov qword [rbp - 9], rax
test r15, r15
je 0x180047993
mov rcx, r15
call fcn.1800d80b0
mov r8d, dword [rbp - 0x11]
xor edx, edx
mov rcx, rbx
call fcn.1800f7810
lea rcx, [rbp - 1]
call fcn.18000a3b0
mov rcx, rax
mov r9d, 0x3000
lea r8, [rbp - 0x11]
mov rdx, rbx
call r13
test eax, eax
js 0x1800479e9
mov rdx, rbx
lea rcx, [rbp - 1]
call fcn.18000ae50
lea rdx, [rbp - 1]
mov rcx, r12
call fcn.18000a410
mov rcx, r12
call fcn.180005c00
test al, al
sete dil
jmp 0x1800479ec
xor dil, dil
test rbx, rbx
je 0x1800479fa
mov rcx, rbx
call fcn.1800d80b0
nop
lea rcx, [rbp - 1]
call fcn.18000a4b0
movzx eax, dil
jmp 0x180047a0b
xor al, al
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.1800d8050
mov rbx, qword [rsp + 0x120]
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret