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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x48]
cmp rax, qword [rcx + 0x10]
jbe 0x4f3e6b
sub rsp, 0xc8
mov qword [rsp + 0xc0], rbp
lea rbp, [rsp + 0xc0]
mov rax, qword [rsp + 0xd0]
movzx ecx, word [rax]
test cx, 0x40
je 0x4f3e56
mov rdx, qword [rsp + 0x108]
test rdx, rdx
jle 0x4f3e49
mov rbx, qword [rsp + 0x100]
movzx r8d, byte [rbx]
cmp r8b, 0x3f
jne 0x4f3678
lea r8, [rdx - 2]
sar r8, 0x3f
xor r8, 0xffffffffffffffff
and r8, 1
add rbx, r8
dec rdx
xor ecx, 0x20
mov r8, qword [rsp + 0x118]
test r8, r8
je 0x4f377c
mov rax, r8
sub r8, rdx
mov qword [rsp + 0x28], r8
cmp r8, rax
ja 0x4f3775
lea rax, [0x00696c80]
mov qword [rsp], rax
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x48], rax
mov qword [rax + 8], 0x22
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4f3756
lea rcx, [0x006d9654]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x4f3739
mov rcx, qword [rsp + 0x110]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
lea rcx, [0x007e5100]
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f36fa
mov qword [rsp], rax
lea rcx, [0x006d9654]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f36d7
call fcn.00429450
ud2
mov word [rsp + 0x1e], cx
mov qword [rsp + 0x108], rdx
mov qword [rsp + 0x100], rbx
mov r8, qword [rax + 0x10]
mov qword [rsp + 0x28], r8
mov r9, qword [rax + 8]
test r8, r8
jne 0x4f38a2
mov rax, qword [rsp + 0xf8]
mov rcx, rax
sub rax, rdx
mov qword [rsp + 0x28], rax
cmp rax, rcx
ja 0x4f389b
lea rcx, [0x00696c80]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x48], rax
mov qword [rax + 8], 0x27
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4f387c
lea rcx, [0x006da9e8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x4f385f
mov rcx, qword [rsp + 0xf0]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
lea rcx, [0x007e5100]
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
mov qword [rsp], rdx
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f3820
mov qword [rsp], rax
lea rcx, [0x006da9e8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f37fd
call fcn.00429450
ud2
lea r10, [r8 - 1]
mov qword [rsp + 0x20], r10
cmp r10, r8
jae 0x4f3e42
mov r9, qword [r9 + r8*8 - 8]
mov qword [rsp + 0x30], r9
movzx r11d, byte [r9]
cmp r11b, 0x80
jb 0x4f39c7
mov rax, qword [rsp + 0xf8]
mov rcx, rax
sub rax, rdx
mov qword [rsp + 0x28], rax
cmp rax, rcx
ja 0x4f39c0
lea rcx, [0x00696c80]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x48], rax
mov qword [rax + 8], 0x27
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4f39a1
lea rcx, [0x006da9e8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x4f3984
mov rcx, qword [rsp + 0xf0]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
lea rcx, [0x007e5100]
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
mov qword [rsp], rdx
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f3945
mov qword [rsp], rax
lea rcx, [0x006da9e8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f3922
call fcn.00429450
ud2
mov r11, qword [rax + 0x20]
mov qword [rsp + 0x38], r11
test r11, r11
je 0x4f3dfc
mov r12d, dword [0x008b4340]
mov r13, qword [r11 + 0x20]
lea r14, [rax + 0x20]
test r12d, r12d
jne 0x4f3db8
mov qword [rax + 0x20], r13
lea rdi, [rsp + 0x50]
xorps xmm0, xmm0
add rdi, 0xfffffffffffffff0
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00454e2d
mov rbp, qword [rbp]
mov r12d, dword [0x008b4340]
test r12d, r12d
jne 0x4f3d63
mov rdi, r11
lea rsi, [rsp + 0x50]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0045517e
mov rbp, qword [rbp]
mov qword [rsp + 0x40], r11
movzx esi, byte [rsp + 0xd8]
mov byte [r11], sil
mov rdi, qword [rsp + 0xe0]
mov qword [r11 + 0x48], rdi
mov r12, qword [rsp + 0xe8]
mov qword [r11 + 0x50], r12
mov word [r11 + 2], cx
lea rcx, [r11 + 0x20]
test byte [rcx], al
mov qword [r11 + 0x10], 1
mov qword [r11 + 0x18], 1
mov r13d, dword [0x008b4340]
lea r14, [r11 + 8]
test r13d, r13d
jne 0x4f3d0c
mov qword [r11 + 8], rcx
mov rcx, qword [r11 + 8]
mov r13, qword [r11 + 0x10]
test r13, r13
jbe 0x4f3d05
mov r13d, dword [0x008b4340]
test r13d, r13d
jne 0x4f3cb3
mov qword [rcx], r9
mov rcx, qword [rax + 0x10]
mov rax, qword [rax + 8]
cmp r10, rcx
jae 0x4f3cac
mov ecx, dword [0x008b4340]
lea r9, [rax + r8*8 - 8]
test ecx, ecx
jne 0x4f3c6c
mov qword [rax + r8*8 - 8], r11
cmp sil, 0x11
jne 0x4f3b12
cmp rdi, 2
jl 0x4f3c5d
mov qword [rsp], r11
mov qword [rsp + 8], 0x3e8
call fcn.004f3e80
movzx eax, byte [rsp + 0x10]
test al, al
je 0x4f3b5a
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
mov rax, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x108]
mov rdx, rax
sub rax, rcx
mov qword [rsp + 0x28], rax
cmp rax, rdx
ja 0x4f3c56
lea rcx, [0x00696c80]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x48], rax
mov qword [rax + 8], 0x14
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4f3c37
lea rcx, [0x006d4415]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x4f3c1a
mov rcx, qword [rsp + 0xf0]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
lea rcx, [0x007e5100]
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rax
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
mov qword [rsp], rdx
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f3bdb
mov qword [rsp], rax
lea rcx, [0x006d4415]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x48]
jmp 0x4f3bb8
call fcn.00429450
ud2
cmp r12, 2
jl 0x4f3b12
jmp 0x4f3af7
mov qword [rsp], r9
mov qword [rsp + 8], r11
call fcn.00410240
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x100]
movzx esi, byte [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
mov r11, qword [rsp + 0x40]
mov r12, qword [rsp + 0xe8]
jmp 0x4f3ae7
call fcn.004293e0
ud2
mov qword [rsp], rcx
mov qword [rsp + 8], r9
call fcn.00410240
mov rax, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x100]
movzx esi, byte [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
mov r8, qword [rsp + 0x28]
mov r10, qword [rsp + 0x20]
mov r11, qword [rsp + 0x40]
mov r12, qword [rsp + 0xe8]
jmp 0x4f3abe
call fcn.004293e0
ud2
mov qword [rsp], r14
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x100]
movzx esi, byte [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x20]
mov r11, qword [rsp + 0x40]
mov r12, qword [rsp + 0xe8]
jmp 0x4f3a9a
lea rsi, [0x006bd0c0]
mov qword [rsp], rsi
mov qword [rsp + 8], r11
lea rsi, [rsp + 0x50]
mov qword [rsp + 0x10], rsi
call fcn.004103b0
mov rax, qword [rsp + 0xd0]
movzx ecx, word [rsp + 0x1e]
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x20]
mov r11, qword [rsp + 0x38]
jmp 0x4f3a3f
mov qword [rsp], r14
mov qword [rsp + 8], r13
call fcn.00410240
mov rax, qword [rsp + 0xd0]
movzx ecx, word [rsp + 0x1e]
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x20]
mov r11, qword [rsp + 0x38]
jmp 0x4f39f5
lea rsi, [0x006bd0c0]
mov qword [rsp], rsi
call fcn.0040f840
mov r11, qword [rsp + 8]
mov rax, qword [rsp + 0xd0]
movzx ecx, word [rsp + 0x1e]
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x20]
jmp 0x4f3a3f
call fcn.004293e0
ud2
mov rbx, qword [rsp + 0x100]
jmp 0x4f3678
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x100]
jmp 0x4f377c
call fcn.00452210
jmp fcn.004f35f0