Function at 0x522460
Capabilities:
Encode data using base64
Reference http user-agent string

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x523c26
push rbp
mov rbp, rsp
sub rsp, 0x1e8
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x1f8], rax
movups xmmword [rsp + 0x140], xmm15
movups xmmword [rsp + 0x150], xmm15
mov edi, 1
lea rcx, [0x006c49dc]
call fcn.00477840
nop dword [rax + rax]
test sil, sil
je 0x522812
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0xe0], rax
test rbx, rbx
jne 0x5224ef
xor edx, edx
jmp 0x522520
lea rcx, [0x006f4878]
call fcn.00476400
test rax, rax
setl dl
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x130]
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x98]
nop
test dl, dl
je 0x522805
test rdi, rdi
jne 0x522531
xor edx, edx
jmp 0x522568
mov rax, rcx
mov rbx, rdi
lea rcx, [0x006f4878]
nop
call fcn.00476400
test rax, rax
setl dl
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x130]
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x98]
test dl, dl
je 0x522805
call fcn.00475da0
mov rcx, qword [rsp + 0x140]
nop
nop
nop
test rcx, rcx
je 0x522597
lea rdx, [rsp + 0x140]
cmp rcx, rdx
je 0x5225a7
jmp 0x523c11
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x148]
cmp rcx, r8
jae 0x522613
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x118], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x0066d1c0]
mov rbx, r8
call fcn.00447aa0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x80]
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
nop dword [rax]
call fcn.00460ba0
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0x140]
nop
nop
nop
test rdx, rdx
je 0x522697
lea r8, [rsp + 0x140]
cmp rdx, r8
je 0x5226a7
jmp 0x523bfe
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x5226e8
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], 0x2f
mov rax, qword [rsp + 0x130]
mov rbx, qword [rsp + 0x98]
call fcn.00475da0
mov rcx, qword [rsp + 0x140]
nop
test rcx, rcx
je 0x52272a
lea rdx, [rsp + 0x140]
cmp rcx, rdx
je 0x52273a
jmp 0x523beb
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x148]
cmp rcx, r8
jae 0x5227a0
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x110], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x0066d1c0]
mov rbx, r8
call fcn.00447aa0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.00460ba0
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
nop
jmp 0x52295a
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x200]
nop word [rax + rax]
test rbx, rbx
je 0x5229e3
mov rax, qword [rsp + 0x1f8]
lea rcx, [0x006f4878]
call fcn.00476400
nop dword [rax]
test rax, rax
jge 0x5229e3
mov rax, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x200]
call fcn.00475da0
mov rcx, qword [rsp + 0x140]
nop
nop
test rcx, rcx
je 0x52287f
lea rdx, [rsp + 0x140]
cmp rcx, rdx
je 0x52288f
jmp 0x523bd8
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x148]
cmp rcx, r8
jae 0x5228fb
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x120], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x0066d1c0]
mov rbx, r8
call fcn.00447aa0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x88]
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.00460ba0
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0x208]
test rdx, rdx
je 0x52296c
mov rsi, qword [rdx]
jmp 0x52296e
xor esi, esi
mov qword [rsp + 0xc0], rsi
lea rax, [0x0066d140]
xor ebx, ebx
mov rcx, rsi
call fcn.004479c0
mov qword [rsp + 0x178], rax
lea rdi, [rsp + 0x188]
lea rdi, [rdi - 0x20]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604cb
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x208]
lea rcx, [rsp + 0x188]
lea rax, [0x0067ba40]
call fcn.0040f2e0
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x178]
xor edx, edx
jmp 0x522a21
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov qword [rsp + 0x168], rcx
mov qword [rcx + rsi], rdx
lea rax, [rsp + 0x188]
call fcn.0040f500
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rsp + 0x188]
test r8, r8
je 0x522ac7
lea rbx, [rdx + 1]
mov rdx, qword [r8]
mov r8, qword [r8 + 8]
nop dword [rax]
cmp rax, rbx
jae 0x522a88
mov qword [rsp + 0x128], rdx
mov qword [rsp + 0x90], r8
mov edi, 1
lea rsi, [0x0066d140]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00447aa0
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0x90]
mov rsi, rcx
mov rcx, rax
mov rax, rsi
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rax
lea rsi, [rbx - 1]
shl rsi, 4
mov qword [rcx + rsi + 8], r8
cmp dword [0x0092d940], 0
je 0x5229f0
call fcn.0045fe40
mov qword [r11], rdx
mov rdi, qword [rcx + rsi]
mov qword [r11 + 8], rdi
jmp 0x5229f0
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0x170], rcx
mov rbx, rdx
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00479dc0
mov rdx, qword [rsp + 0x170]
mov rax, qword [rsp + 0xb8]
jmp 0x522b11
mov rdx, qword [rsp + 0x178]
add rdx, 0x10
mov rax, qword [rsp + 0xd8]
dec rax
test rax, rax
jle 0x5231b6
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x178], rdx
mov rdi, qword [rdx + 8]
mov qword [rsp + 0xb0], rdi
mov rcx, qword [rdx]
mov qword [rsp + 0x160], rcx
lea rax, [0x0067ba40]
mov rbx, qword [rsp + 0x208]
call fcn.004121a0
mov rdx, qword [rsp + 0x140]
mov rsi, qword [rax + 8]
mov r8, qword [rax]
nop
nop
test rdx, rdx
je 0x522b7d
lea r9, [rsp + 0x140]
cmp rdx, r9
je 0x522b8d
jmp 0x523bc5
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov qword [rsp + 0x138], r8
mov qword [rsp + 0xa0], rsi
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x522bee
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov rsi, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x138]
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], 0x3b
mov rdx, qword [rsp + 0x140]
nop
nop
test rdx, rdx
je 0x522c1c
lea r9, [rsp + 0x140]
cmp rdx, r9
je 0x522c2c
jmp 0x523bb2
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x522c7d
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov rsi, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x138]
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], 0x20
mov rbx, qword [rsp + 0xb0]
test rbx, rbx
je 0x5231a9
mov rax, qword [rsp + 0x160]
lea rcx, [0x006f4878]
call fcn.00476400
test rax, rax
jge 0x5231a9
mov rax, qword [rsp + 0x160]
mov rbx, qword [rsp + 0xb0]
call fcn.00475da0
mov rcx, qword [rsp + 0x140]
nop
nop
test rcx, rcx
je 0x522cee
lea rdx, [rsp + 0x140]
cmp rcx, rdx
je 0x522cfe
jmp 0x523b9f
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x148]
cmp rcx, r8
jae 0x522d64
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x108], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x0066d1c0]
mov rbx, r8
call fcn.00447aa0
mov rdx, qword [rsp + 0xd0]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x70]
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
mov qword [rsp + 0xc8], rcx
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.00460ba0
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
nop
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x138]
xor eax, eax
jmp 0x5231f2
cmp rax, rdx
jge 0x522e87
mov r8, qword [rsp + 0x140]
nop
nop
test r8, r8
je 0x522e0a
lea r9, [rsp + 0x140]
cmp r8, r9
je 0x522e1a
jmp 0x523b8c
lea r8, [rsp + 0x140]
mov qword [rsp + 0x140], r8
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov r8, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x522e79
mov rax, r8
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x138]
mov r8, rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rbx
mov byte [rbx + r8 - 1], 0x2a
mov r8, qword [rsp + 0x140]
nop
nop
test r8, r8
je 0x522eaa
lea r9, [rsp + 0x140]
nop
cmp r8, r9
je 0x522eba
jmp 0x523b79
lea r8, [rsp + 0x140]
mov qword [rsp + 0x140], r8
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov r8, qword [rsp + 0x148]
cmp rcx, rbx
jb 0x522edf
cmp rax, rdx
jmp 0x522f24
mov rax, r8
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xa0]
cmp rdx, rcx
mov rdx, rcx
mov rsi, qword [rsp + 0x138]
mov r8, rax
mov qword [rsp + 0x150], rbx
mov byte [rbx + r8 - 1], 0x3d
jge 0x522ff0
mov r8, qword [rsp + 0x140]
nop
test r8, r8
je 0x522f58
lea r9, [rsp + 0x140]
cmp r8, r9
je 0x522f68
jmp 0x523b66
lea r8, [rsp + 0x140]
mov qword [rsp + 0x140], r8
mov rbx, qword [rsp + 0x150]
lea r8, [rbx + 7]
mov rcx, qword [rsp + 0x158]
mov rax, qword [rsp + 0x148]
cmp rcx, r8
jae 0x522fc0
mov qword [rsp + 0xd0], rbx
mov rbx, r8
mov edi, 7
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x138]
mov r8, rbx
mov rbx, qword [rsp + 0xd0]
mov dword [rax + rbx], 0x2d667475
mov dword [rax + rbx + 3], 0x2727382d
mov qword [rsp + 0x150], r8
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
xor eax, eax
xor ecx, ecx
jmp 0x523640
test rdx, rdx
jne 0x522ff9
xor eax, eax
jmp 0x523023
mov rax, rsi
mov rbx, rdx
lea rcx, [0x006f4878]
call fcn.00476400
test rax, rax
setl dl
mov rsi, qword [rsp + 0x138]
mov eax, edx
mov rdx, qword [rsp + 0xa0]
test al, al
jne 0x5230c5
mov r8, qword [rsp + 0x140]
nop
test r8, r8
je 0x52304b
lea r9, [rsp + 0x140]
cmp r8, r9
je 0x52305b
jmp 0x52362a
lea r8, [rsp + 0x140]
mov qword [rsp + 0x140], r8
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x5230ac
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x138]
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], 0x22
xor eax, eax
xor ecx, ecx
nop dword [rax]
jmp 0x523274
mov r8, qword [rsp + 0x140]
nop
nop
test r8, r8
je 0x5230ea
lea r9, [rsp + 0x140]
nop dword [rax]
cmp r8, r9
je 0x5230fa
jmp 0x52325e
lea r8, [rsp + 0x140]
mov qword [rsp + 0x140], r8
mov rcx, qword [rsp + 0x158]
mov r8, qword [rsp + 0x150]
lea rbx, [rdx + r8]
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x52314a
mov qword [rsp + 0xd0], r8
mov rdi, rdx
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x138]
mov r8, qword [rsp + 0xd0]
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xc8], rcx
lea rdi, [rax + r8]
mov rax, rdi
mov rbx, rsi
mov rcx, rdx
call fcn.00460ba0
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
jmp 0x522afa
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x150]
mov rax, qword [rsp + 0x148]
mov rcx, rax
neg rcx
nop
cmp rbx, rcx
ja 0x5231e0
add rsp, 0x1e8
pop rbp
ret
test rax, rax
je 0x5231ea
call fcn.00456d40
call fcn.00456d80
mov rax, r9
mov qword [rsp + 0xd0], rax
nop word [rax + rax]
cmp rax, rdx
jge 0x522de3
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x52321d
lea r9, [rax + 1]
jmp 0x523249
mov rbx, rdx
mov rcx, rax
mov rax, rsi
call fcn.00456f00
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x138]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xd0]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x5231ef
cmp r8d, 9
je 0x5231ef
jmp 0x522de0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
inc rax
cmp rax, rdx
jge 0x523436
movzx r8d, byte [rsi + rax]
cmp r8b, 0x22
je 0x52328e
cmp r8b, 0x5c
jne 0x523271
cmp rcx, rax
ja 0x52361c
mov rdi, rax
sub rdi, rcx
mov r8, rdi
neg r8
sar r8, 0x3f
and rcx, r8
mov r8, qword [rsp + 0x140]
lea rbx, [rcx + rsi]
nop
test r8, r8
je 0x5232ce
lea r9, [rsp + 0x140]
cmp r8, r9
je 0x5232de
jmp 0x523609
lea r8, [rsp + 0x140]
mov qword [rsp + 0x140], r8
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x158]
mov r8, qword [rsp + 0x150]
lea r9, [r8 + rdi]
mov r10, qword [rsp + 0x148]
nop
cmp rcx, r9
jae 0x523347
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0xd0], r8
mov rax, r10
mov rbx, r9
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov rdi, qword [rsp + 0x60]
mov r8, qword [rsp + 0xd0]
mov r10, rax
mov r9, rbx
mov rbx, qword [rsp + 0xf0]
mov qword [rsp + 0x180], r10
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xc8], rcx
lea rax, [r10 + r8]
mov rcx, rdi
call fcn.00460ba0
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0x140]
nop
test rdx, rdx
je 0x5233bb
lea r8, [rsp + 0x140]
cmp rdx, r8
je 0x5233cb
jmp 0x5235f6
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x52340c
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], 0x5c
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x138]
mov rcx, rax
jmp 0x523271
cmp rcx, rdx
ja 0x5235eb
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x140]
lea rbx, [rcx + rsi]
nop
nop dword [rax]
test rdx, rdx
je 0x523477
lea r8, [rsp + 0x140]
cmp rdx, r8
je 0x523487
jmp 0x5235d8
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
lea r8, [rdx + rdi]
mov rax, qword [rsp + 0x148]
cmp rcx, r8
jae 0x5234ea
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0xe8], rbx
mov qword [rsp + 0xc8], rdx
mov rbx, r8
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov rdx, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov r8, rbx
mov rbx, qword [rsp + 0xe8]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0x180], rax
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.00460ba0
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0x140]
nop
test rdx, rdx
je 0x52355d
lea r8, [rsp + 0x140]
cmp rdx, r8
je 0x52356d
jmp 0x5235c5
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x5235ae
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], 0x22
nop dword [rax + rax]
jmp 0x522afa
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
mov rax, rcx
mov rcx, rdx
call fcn.004602a0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.004602a0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
inc rax
cmp rax, rdx
jge 0x5239e0
mov qword [rsp + 0xa8], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x47], r8b
lea r9d, [r8 - 0x21]
nop
cmp r9b, 0x5e
jb 0x52366d
mov ebx, 1
jmp 0x5236e0
cmp r8b, 0x2a
jne 0x523680
mov ebx, 1
jmp 0x5236e0
cmp r8b, 0x27
jne 0x52368d
mov ebx, 1
jmp 0x5236e0
cmp r8b, 0x25
jne 0x52369a
mov ebx, 1
jmp 0x5236e0
mov qword [rsp + 0x58], rcx
nop
nop
lea rax, [0x006c717b]
mov ebx, 0xf
mov ecx, r8d
call fcn.00474ec0
test rax, rax
setge dl
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x138]
movzx r8d, byte [rsp + 0x47]
mov ebx, edx
mov rdx, qword [rsp + 0xa0]
test bl, bl
je 0x52363d
cmp rcx, rax
ja 0x523b58
mov rdi, rax
sub rdi, rcx
mov r9, rdi
neg r9
sar r9, 0x3f
and rcx, r9
mov r9, qword [rsp + 0x140]
lea rbx, [rsi + rcx]
nop
test r9, r9
je 0x52372a
lea r10, [rsp + 0x140]
nop
cmp r9, r10
je 0x52373a
jmp 0x523b45
lea r9, [rsp + 0x140]
mov qword [rsp + 0x140], r9
mov rcx, qword [rsp + 0x158]
mov r9, qword [rsp + 0x150]
lea r10, [r9 + rdi]
mov r11, qword [rsp + 0x148]
cmp rcx, r10
jae 0x5237a0
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xd0], r9
mov rax, r11
mov rbx, r10
lea rsi, [0x0066d1c0]
nop dword [rax]
call fcn.00447aa0
mov rdi, qword [rsp + 0x68]
mov r9, qword [rsp + 0xd0]
mov r11, rax
mov r10, rbx
mov rbx, qword [rsp + 0x100]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r10
mov qword [rsp + 0x180], r11
lea rax, [r11 + r9]
mov rcx, rdi
nop
call fcn.00460ba0
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0x140]
nop
nop
nop
test rdx, rdx
je 0x523817
lea r8, [rsp + 0x140]
cmp rdx, r8
je 0x523827
jmp 0x523b2f
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x523868
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], 0x25
movzx edx, byte [rsp + 0x47]
mov r8d, edx
shr dl, 4
movzx edx, dl
mov r9, qword [rsp + 0x140]
lea r10, [0x006c75cd]
movzx edx, byte [r10 + rdx]
nop
test r9, r9
je 0x5238af
lea r11, [rsp + 0x140]
cmp r9, r11
je 0x5238bf
jmp 0x523b1c
lea r9, [rsp + 0x140]
mov qword [rsp + 0x140], r9
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x523916
mov byte [rsp + 0x46], dl
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
movzx edx, byte [rsp + 0x46]
movzx r8d, byte [rsp + 0x47]
lea r10, [0x006c75cd]
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], dl
and r8d, 0xf
mov rdx, qword [rsp + 0x140]
movzx r8d, byte [r8 + r10]
nop
test rdx, rdx
je 0x52394b
lea r9, [rsp + 0x140]
cmp rdx, r9
je 0x52395b
jmp 0x523b09
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
inc rbx
mov rax, qword [rsp + 0x148]
cmp rcx, rbx
jae 0x5239a7
mov byte [rsp + 0x45], r8b
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x148], rax
movzx r8d, byte [rsp + 0x45]
mov qword [rsp + 0x150], rbx
mov byte [rbx + rax - 1], r8b
mov rcx, qword [rsp + 0xa8]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0x138]
mov rcx, rdx
mov rdx, qword [rsp + 0xa0]
jmp 0x52363d
cmp rcx, rdx
ja 0x523afe
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x140]
lea rbx, [rsi + rcx]
nop
test rdx, rdx
je 0x523a1d
lea r8, [rsp + 0x140]
cmp rdx, r8
je 0x523a2d
jmp 0x523aeb
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x140], rdx
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
lea r8, [rdi + rdx]
mov rax, qword [rsp + 0x148]
cmp rcx, r8
jae 0x523a90
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xf8], rbx
mov rbx, r8
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov rdx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xc8]
mov r8, rbx
mov rbx, qword [rsp + 0xf8]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xc8], r8
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.00460ba0
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x148], rdx
jmp 0x522afa
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
mov rax, rcx
mov rcx, rdx
call fcn.004602a0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
nop dword [rax]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.004602a0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
nop
call fcn.004337c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.0045df00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00522460