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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0xd8]
cmp rax, qword [rcx + 0x10]
jbe 0x4fca6d
sub rsp, 0x158
mov qword [rsp + 0x150], rbp
lea rbp, [rsp + 0x150]
mov rax, qword [rsp + 0x170]
cmp rax, 1
jb 0x4fca66
lea rcx, [rax - 2]
mov qword [rsp + 0xa0], rcx
mov rdx, rcx
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 1
mov qword [rsp + 0x98], rcx
mov rbx, qword [rsp + 0x168]
lea r8, [rcx + rbx]
mov qword [rsp + 0xa8], r8
lea r9, [rax - 1]
mov qword [rsp + 0x70], r9
mov r10, qword [rsp + 0x160]
mov r11, qword [r10 + 0x20]
mov qword [rsp + 0xb8], r11
test r11, r11
je 0x4fca17
mov r12d, dword [0x008b4340]
mov r13, qword [r11 + 0x20]
lea r14, [r10 + 0x20]
test r12d, r12d
jne 0x4fc9c7
mov qword [r10 + 0x20], r13
lea rdi, [rsp + 0xe0]
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 0x4fc963
mov rdi, r11
lea rsi, [rsp + 0xe0]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0045517e
mov rbp, qword [rbp]
mov qword [rsp + 0xc0], r11
mov byte [r11], 4
movzx esi, word [r10]
mov word [r11 + 2], si
lea rsi, [r11 + 0x40]
test byte [rsi], al
mov qword [r11 + 0x30], 0
mov qword [r11 + 0x38], 2
mov edi, dword [0x008b4340]
lea r12, [r11 + 0x28]
mov qword [rsp + 0xd8], r12
test edi, edi
jne 0x4fc907
mov qword [r11 + 0x28], rsi
cmp rax, 1
je 0x4fc8f5
movzx ecx, byte [rbx + rcx]
cmp cl, 0x5e
jne 0x4fc8e3
lea rcx, [rax - 3]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 1
add rcx, r8
mov qword [rsp + 0xa8], rcx
movzx esi, word [r10]
test si, 4
jne 0x4fbf4d
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x30]
mov r8, qword [r11 + 0x28]
lea r9, [rdi + 2]
cmp r9, rsi
jg 0x4fc81d
lea rsi, [rdi + 2]
mov qword [r11 + 0x30], rsi
shl rdi, 2
movabs rsi, 0xa0000000a
mov qword [r8 + rdi], rsi
mov rsi, 0xffffffffffffffff
mov qword [rsp + 0x78], rsi
mov rdi, qword [r11 + 0x38]
mov r8, qword [r11 + 0x30]
mov r9, qword [r11 + 0x28]
mov r13d, 1
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0x88], r8
test rdx, rdx
jne 0x4fc69d
je 0x4fbfbd
movzx r14d, byte [rcx]
cmp r14b, 0x2d
jne 0x4fbfbd
movzx r14d, word [r10]
test r14w, 0x40
jne 0x4fbfbd
test r13b, r13b
je 0x4fc556
cmp rdx, 2
jle 0x4fbfdc
movzx r13d, byte [rcx]
cmp r13b, 0x5b
jne 0x4fbfdc
movzx r13d, byte [rcx + 1]
cmp r13b, 0x3a
je 0x4fc461
mov qword [rsp], r10
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x28], rdi
call fcn.004fb2e0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
mov r8, qword [rsp + 0x40]
test rbx, rbx
jne 0x4fc429
test rax, rax
je 0x4fc076
mov rbx, qword [rsp + 0x168]
mov r10, qword [rsp + 0x160]
mov r11, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xd8]
mov rdx, rsi
xor r13d, r13d
mov r9, rax
mov rax, qword [rsp + 0x170]
mov rsi, qword [rsp + 0x78]
mov r14, rcx
mov rcx, rdi
mov rdi, r8
mov r8, r14
jmp 0x4fbf6b
mov rax, qword [rsp + 0x160]
mov qword [rsp], rax
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x10], rdx
mov rbx, qword [rsp + 0xd0]
mov qword [rsp + 0x18], rbx
mov rsi, qword [rsp + 0x88]
mov qword [rsp + 0x20], rsi
mov rdi, qword [rsp + 0x90]
mov qword [rsp + 0x28], rdi
call fcn.004faae0
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x50]
test rdx, rdx
je 0x4fc0f7
mov rdi, rax
mov rax, rdx
mov r8, rcx
mov rcx, rbx
jmp 0x4fc02f
mov rax, qword [rsp + 0x160]
mov qword [rsp], rax
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x10], rdx
mov rbx, qword [rsp + 0x168]
mov qword [rsp + 0x18], rbx
mov rsi, qword [rsp + 0x170]
mov qword [rsp + 0x20], rsi
call fcn.004fa900
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x30]
mov edx, dword [rsp + 0x28]
mov dword [rsp + 0x6c], edx
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
test rsi, rsi
jne 0x4fc3f1
cmp rax, 2
jl 0x4fc180
movzx ebx, byte [rcx]
cmp bl, 0x2d
jne 0x4fc180
movzx ebx, byte [rcx + 1]
lea rsi, [rcx + 1]
cmp bl, 0x5d
jne 0x4fc23f
mov ebx, edx
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0x70], rax
mov rsi, qword [rsp + 0x160]
movzx edi, word [rsi]
test di, 1
jne 0x4fc1fb
mov rdi, qword [rsp + 0xd0]
mov qword [rsp], rdi
mov rdi, qword [rsp + 0x88]
mov qword [rsp + 8], rdi
mov rdi, qword [rsp + 0x90]
mov qword [rsp + 0x10], rdi
mov dword [rsp + 0x18], ebx
mov dword [rsp + 0x1c], edx
call fcn.004fccb0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0xa8]
mov r8, rax
mov rax, rdx
jmp 0x4fc02f
mov rdi, qword [rsp + 0xd0]
mov qword [rsp], rdi
mov rdi, qword [rsp + 0x88]
mov qword [rsp + 8], rdi
mov rdi, qword [rsp + 0x90]
mov qword [rsp + 0x10], rdi
mov dword [rsp + 0x18], ebx
mov dword [rsp + 0x1c], edx
call fcn.004fce20
mov rdx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
jmp 0x4fc1e3
mov rcx, qword [rsp + 0x160]
mov qword [rsp], rcx
mov qword [rsp + 8], rsi
dec rax
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x18], rax
mov rbx, qword [rsp + 0x170]
mov qword [rsp + 0x20], rbx
call fcn.004fa900
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov esi, dword [rsp + 0x28]
test rcx, rcx
jne 0x4fc3b9
mov eax, dword [rsp + 0x6c]
cmp esi, eax
jl 0x4fc2af
mov rcx, rbx
mov ebx, eax
mov rax, rdx
mov edx, esi
jmp 0x4fc182
mov rax, qword [rsp + 0x80]
mov rcx, rax
sub rax, rdx
mov qword [rsp + 0x80], rax
cmp rax, rcx
ja 0x4fc3b2
lea rcx, [0x00696c80]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0xc8], rax
mov qword [rax + 8], 0x1d
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4fc390
lea rcx, [0x006d7af1]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x4fc370
mov rcx, qword [rsp + 0xb0]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
lea rcx, [0x007e5100]
mov qword [rsp + 0x188], rcx
mov qword [rsp + 0x190], rax
mov rbp, qword [rsp + 0x150]
add rsp, 0x158
ret
mov qword [rsp], rdx
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0xc8]
jmp 0x4fc331
mov qword [rsp], rax
lea rcx, [0x006d7af1]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0xc8]
jmp 0x4fc30b
call fcn.00429450
ud2
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], rcx
mov qword [rsp + 0x190], rax
mov rbp, qword [rsp + 0x150]
add rsp, 0x158
ret
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], rsi
mov qword [rsp + 0x190], rbx
mov rbp, qword [rsp + 0x150]
add rsp, 0x158
ret
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], rbx
mov qword [rsp + 0x190], rdx
mov rbp, qword [rsp + 0x150]
add rsp, 0x158
ret
mov qword [rsp], r10
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x28], rdi
call fcn.004facc0
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0x30]
test rbx, rbx
jne 0x4fc51e
test r8, r8
je 0x4fc4c4
mov rcx, rsi
mov rsi, rdi
mov rdi, rax
mov rax, r8
mov r8, rdx
jmp 0x4fc02f
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x168]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x90]
mov r8, qword [rsp + 0x88]
mov r9, qword [rsp + 0xd0]
mov r10, qword [rsp + 0x160]
mov r11, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xd8]
jmp 0x4fbfdc
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], rbx
mov qword [rsp + 0x190], rcx
mov rbp, qword [rsp + 0x150]
add rsp, 0x158
ret
cmp rdx, 1
je 0x4fc56c
movzx r13d, byte [rcx + 1]
cmp r13b, 0x5d
jne 0x4fc56c
jmp 0x4fbfbd
lea rax, [rdx - 2]
sar rax, 0x3f
xor rax, 0xffffffffffffffff
and rax, 1
add rax, rcx
mov qword [rsp], rax
lea rax, [rdx - 1]
mov qword [rsp + 8], rax
call fcn.00484b30
mov rax, qword [rsp + 0x18]
inc rax
mov qword [rsp + 0xa0], rax
mov rcx, qword [rsp + 0x80]
cmp rax, rcx
ja 0x4fc696
lea rcx, [0x00696c80]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0xc8], rax
mov qword [rax + 8], 0x1d
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4fc674
lea rcx, [0x006d7af1]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x4fc654
mov rcx, qword [rsp + 0xb0]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
lea rcx, [0x007e5100]
mov qword [rsp + 0x188], rcx
mov qword [rsp + 0x190], rax
mov rbp, qword [rsp + 0x150]
add rsp, 0x158
ret
mov qword [rsp], rdx
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0xc8]
jmp 0x4fc615
mov qword [rsp], rax
lea rcx, [0x006d7af1]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0xc8]
jmp 0x4fc5ef
call fcn.00429450
ud2
movzx r14d, byte [rcx]
cmp r14b, 0x5d
je 0x4fc6af
test rdx, rdx
jmp 0x4fbf9c
test r13b, r13b
je 0x4fc6bc
test rdx, rdx
jmp 0x4fbf9c
mov qword [r11 + 0x30], r8
mov qword [r11 + 0x38], rdi
lea rax, [rdx - 2]
sar rax, 0x3f
xor rax, 0xffffffffffffffff
and rax, 1
add rax, rcx
mov qword [rsp + 0xa8], rax
lea rcx, [rdx - 1]
mov qword [rsp + 0x70], rcx
mov edx, dword [0x008b4340]
test edx, edx
jne 0x4fc7e0
mov qword [r11 + 0x28], r9
mov qword [rsp], r12
call fcn.004fca80
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x78]
test rbx, rbx
jl 0x4fc7b9
mov rbx, qword [rsp + 0xc0]
mov qword [rbx + 0x30], rcx
mov qword [rbx + 0x38], rdx
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4fc799
mov qword [rbx + 0x28], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp], rax
mov qword [rsp + 8], rbx
call fcn.004f2b00
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], 0
mov rbp, qword [rsp + 0x150]
add rsp, 0x158
ret
mov rcx, qword [rsp + 0xd8]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
call fcn.00410240
mov rbx, qword [rsp + 0xc0]
jmp 0x4fc73e
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
call fcn.004fd990
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
jmp 0x4fc720
mov qword [rsp], r12
mov qword [rsp + 8], r9
call fcn.00410240
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov r10, qword [rsp + 0x160]
mov r11, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xd8]
jmp 0x4fc6fa
lea r13, [0x0066f480]
mov qword [rsp], r13
mov qword [rsp + 8], r8
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], r9
call fcn.0043e790
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x98], rcx
mov rdx, qword [rsp + 0x38]
mov rbx, qword [rsp + 0xc0]
mov qword [rbx + 0x38], rdx
mov edx, dword [0x008b4340]
test edx, edx
jne 0x4fc8bb
mov qword [rbx + 0x28], rax
mov r8, qword [rbx + 0x28]
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x168]
mov r10, qword [rsp + 0x160]
mov r11, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0x98]
jmp 0x4fbf33
mov rdx, qword [rsp + 0xd8]
mov qword [rsp], rdx
mov qword [rsp + 8], rax
call fcn.00410240
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xc0]
jmp 0x4fc872
mov rcx, r8
mov rdx, r9
mov rsi, 1
jmp 0x4fbf54
mov rcx, r8
mov rdx, r9
mov rsi, 1
jmp 0x4fbf54
mov qword [rsp], r12
mov qword [rsp + 8], rsi
call fcn.00410240
mov rax, qword [rsp + 0x170]
cmp rax, 1
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x168]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x160]
mov r11, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xd8]
jmp 0x4fbee1
lea rsi, [0x006bd0c0]
mov qword [rsp], rsi
mov qword [rsp + 8], r11
lea rsi, [rsp + 0xe0]
mov qword [rsp + 0x10], rsi
call fcn.004103b0
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x168]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x160]
mov r11, qword [rsp + 0xb8]
jmp 0x4fbe94
mov qword [rsp], r14
mov qword [rsp + 8], r13
call fcn.00410240
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x168]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x160]
mov r11, qword [rsp + 0xb8]
jmp 0x4fbe44
lea rsi, [0x006bd0c0]
mov qword [rsp], rsi
call fcn.0040f840
mov r11, qword [rsp + 8]
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x168]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x160]
jmp 0x4fbe94
call fcn.00429450
ud2
call fcn.00452210
jmp fcn.004fbd80