Function at 0x48d220
Capabilities:
Reference http user-agent string

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x48d70b
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x98], r9
movzx r11d, word [rax]
test r11w, 0x40
je 0x48d2ef
test r10, r10
je 0x48d275
cmp byte [r9], 0x3f
jne 0x48d275
dec r10
mov r12, r10
neg r12
sar r12, 0x3f
and r12d, 1
add r9, r12
xor r11d, 0x20
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x48d2ef
mov rcx, rdx
sub rcx, r10
cmp rdx, rcx
jb 0x48d705
mov qword [rsp + 0x20], rcx
lea rax, [0x0067bfc0]
call fcn.0040d680
mov qword [rax + 8], 0x22
lea rcx, [0x006bc313]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x18], rcx
cmp dword [0x00921500], 0
jne 0x48d2ca
mov rdx, qword [rsp + 0x58]
jmp 0x48d2d7
call fcn.004665a0
mov rdx, qword [rsp + 0x58]
mov qword [r11], rdx
mov qword [rax + 0x10], rdx
xor ebx, ebx
lea rcx, [0x007286c0]
mov rdi, rax
xor eax, eax
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 0x88], rsi
mov r12, qword [rax + 0x10]
nop dword [rax + rax]
test r12, r12
jne 0x48d37b
mov rcx, r8
sub rcx, r10
cmp r8, rcx
jb 0x48d6fc
mov qword [rsp + 0x20], rcx
lea rax, [0x0067bfc0]
call fcn.0040d680
mov qword [rax + 8], 0x27
lea rcx, [0x006be3d0]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x18], rcx
cmp dword [0x00921500], 0
jne 0x48d353
mov rdx, qword [rsp + 0x88]
jmp 0x48d363
call fcn.004665a0
mov rdx, qword [rsp + 0x88]
mov qword [r11], rdx
mov qword [rax + 0x10], rdx
xor ebx, ebx
lea rcx, [0x007286c0]
mov rdi, rax
xor eax, eax
add rsp, 0x48
pop rbp
ret
mov r13, qword [rax + 8]
mov r13, qword [r13 + r12*8 - 8]
cmp byte [r13], 0x80
jb 0x48d401
mov rcx, r8
sub rcx, r10
cmp r8, rcx
jb 0x48d6f4
mov qword [rsp + 0x20], rcx
lea rax, [0x0067bfc0]
call fcn.0040d680
mov qword [rax + 8], 0x27
lea rcx, [0x006be3d0]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x18], rcx
cmp dword [0x00921500], 0
jne 0x48d3d9
mov rdx, qword [rsp + 0x88]
jmp 0x48d3e9
call fcn.004665a0
mov rdx, qword [rsp + 0x88]
mov qword [r11], rdx
mov qword [rax + 0x10], rdx
xor ebx, ebx
lea rcx, [0x007286c0]
mov rdi, rax
xor eax, eax
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x90], r8
mov byte [rsp + 0x70], bl
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x18], r12
mov qword [rsp + 0x80], rdi
mov word [rsp + 0x16], r11w
mov rdx, qword [rax + 0x20]
nop
nop
test rdx, rdx
je 0x48d4f5
mov r15, qword [rdx + 0x20]
cmp dword [0x00921500], 0
je 0x48d4ca
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], r15
call fcn.004665c0
mov qword [r11], r15
mov rcx, qword [rax + 0x20]
mov qword [r11 + 8], rcx
mov rbx, rdx
lea rax, [0x0069e880]
call fcn.00413860
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x30]
movzx ebx, byte [rsp + 0x70]
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x20]
movzx r11d, word [rsp + 0x16]
mov r12, qword [rsp + 0x18]
mov r13, qword [rsp + 0x28]
mov r15, qword [rsp + 0x38]
mov qword [rax + 0x20], r15
mov r15, rdi
mov rdi, rdx
lea rdi, [rdi - 0x10]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466c86
mov rbp, qword [rbp]
jmp 0x48d550
lea rax, [0x0069e880]
nop dword [rax]
call fcn.0040d680
mov rcx, qword [rsp + 0x68]
inc qword [rcx + 0x58]
movzx ebx, byte [rsp + 0x70]
mov rsi, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x20]
movzx r11d, word [rsp + 0x16]
mov r12, qword [rsp + 0x18]
mov r13, qword [rsp + 0x28]
mov r15, qword [rsp + 0x80]
mov rdx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x78]
mov byte [rdx], bl
mov qword [rdx + 0x48], rcx
mov qword [rdx + 0x50], r15
mov word [rdx + 2], r11w
mov qword [rdx + 0x10], 1
mov qword [rdx + 0x18], 1
lea rdi, [rdx + 0x20]
cmp dword [0x00921500], 0
je 0x48d598
nop dword [rax]
call fcn.004665c0
mov qword [r11], rdi
mov rsi, qword [rdx + 8]
mov qword [r11 + 8], rsi
mov rsi, qword [rsp + 0x88]
mov qword [rdx + 8], rdi
mov rdi, qword [rdx + 8]
cmp dword [0x00921500], 0
je 0x48d5c0
call fcn.004665c0
mov qword [r11], r13
mov rsi, qword [rdi]
mov qword [r11 + 8], rsi
mov rsi, qword [rsp + 0x88]
mov qword [rdi], r13
lea rdi, [r12 - 1]
mov r11, qword [rax + 0x10]
cmp r11, rdi
jbe 0x48d6e9
mov rdi, qword [rax + 8]
cmp dword [0x00921500], 0
je 0x48d5f3
call fcn.004665c0
mov qword [r11], rdx
mov r13, qword [rdi + r12*8 - 8]
mov qword [r11 + 8], r13
mov qword [rsp + 0x30], rdx
mov qword [rdi + r12*8 - 8], rdx
mov rbx, rdx
call fcn.0048c240
movzx ecx, byte [rsp + 0x70]
cmp cl, 0x11
jne 0x48d6d0
mov rdx, qword [rsp + 0x78]
cmp rdx, 2
jge 0x48d630
mov rdx, qword [rsp + 0x80]
cmp rdx, 2
jl 0x48d6d0
mov rax, qword [rsp + 0x30]
mov ebx, 0x3e8
call fcn.0048d780
nop
test al, al
jne 0x48d6d0
mov rcx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x20]
mov rdx, rcx
sub rcx, rbx
nop dword [rax + rax]
cmp rdx, rcx
jb 0x48d6e4
mov qword [rsp + 0x20], rcx
lea rax, [0x0067bfc0]
call fcn.0040d680
mov qword [rax + 8], 0x14
lea rcx, [0x006b5841]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x18], rcx
cmp dword [0x00921500], 0
jne 0x48d6a8
mov rdx, qword [rsp + 0x88]
jmp 0x48d6b8
call fcn.004665a0
mov rdx, qword [rsp + 0x88]
mov qword [r11], rdx
mov qword [rax + 0x10], rdx
xor ebx, ebx
lea rcx, [0x007286c0]
mov rdi, rax
xor eax, eax
add rsp, 0x48
pop rbp
ret
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x20]
xor ecx, ecx
xor edi, edi
add rsp, 0x48
pop rbp
ret
call fcn.004669a0
mov rax, rdi
mov rcx, r11
call fcn.00466960
mov rdx, r8
call fcn.004669a0
mov rdx, r8
nop
call fcn.004669a0
call fcn.004669a0
nop
mov qword [rsp + 0x18], rax
mov byte [rsp + 0x20], bl
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x50], r10
call fcn.004646a0
mov rax, qword [rsp + 0x18]
movzx ebx, byte [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x50]
nop
jmp fcn.0048d220