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

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x5f504f
sub rsp, 0x1f0
mov qword [rsp + 0x1e8], rbp
lea rbp, [rsp + 0x1e8]
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x220], r8
mov qword [rsp + 0xe0], rax
test rbx, rbx
je 0x5f4ffa
cmp qword [rax + 0x10], 0
je 0x5f4fa2
cmp qword [rax + 0xc8], 0
je 0x5f457c
nop
mov rcx, qword [rax + 0x40]
mov rax, qword [rax + 0x48]
test rcx, rcx
je 0x5f453b
mov rcx, qword [rcx + 0x18]
call rcx
lea rax, [0x0066df60]
call fcn.0040d960
mov qword [rax + 8], 0x38
lea rcx, [0x006b65aa]
mov qword [rax], rcx
lea rbx, [0x006d4728]
lea rcx, [0x007191c0]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x110], r8
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], rsi
cmp qword [rax + 0x38], 0
jne 0x5f4685
nop
cmp rax, rax
jne 0x5f4634
lea rax, [0x0069bf40]
nop
call fcn.0040d960
mov qword [rsp + 0xe0], rax
cmp dword [0x008f2cf0], 0
jne 0x5f4615
mov rsi, qword [rsp + 0x1f8]
mov rcx, qword [rsi]
mov qword [rax], rcx
lea rdi, [rax + 8]
lea rax, [rsi + 8]
mov rcx, rsi
mov rsi, rax
nop word [rax + rax]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465eee
mov rbp, qword [rbp]
jmp 0x5f4634
mov rbx, rax
mov rcx, qword [rsp + 0x1f8]
lea rax, [0x0069bf40]
call fcn.00413e40
mov rcx, qword [rsp + 0x1f8]
call fcn.0040e4a0
mov rdi, qword [rsp + 0xe0]
test byte [rdi], al
cmp dword [0x008f2cf0], 0
jne 0x5f4652
mov qword [rdi + 0x38], rax
jmp 0x5f465b
add rdi, 0x38
call fcn.004654a0
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
mov rdx, qword [rsp + 0xe0]
mov r9, qword [rdx + 0x10]
mov r9, qword [r9 + 0x20]
test r9, r9
jne 0x5f469e
xor edx, edx
jmp 0x5f46f3
mov qword [rsp + 0xd0], r9
mov rax, qword [rdx + 0x38]
lea rbx, [0x006a6a51]
mov ecx, 0xd
call fcn.005d2ce0
test rbx, rbx
sete dl
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
mov r9, qword [rsp + 0xd0]
test dl, dl
je 0x5f4966
nop dword [rax + rax]
test r9, r9
je 0x5f470e
mov rdx, qword [r9]
mov r10, qword [r9 + 8]
jmp 0x5f4719
mov r10d, 0
mov edx, 0
je 0x5f4725
mov r11, qword [r9 + 0x10]
mov r9, qword [r9 + 0x18]
jmp 0x5f472b
xor r9d, r9d
xor r11d, r11d
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0x40], r10
mov qword [rsp + 0xb0], r11
mov qword [rsp + 0x38], r9
nop
cmp qword [rsp + 0xe0], rax
jne 0x5f47bd
lea rax, [0x0069bf40]
call fcn.0040d960
mov qword [rsp + 0xe0], rax
cmp dword [0x008f2cf0], 0
jne 0x5f479e
mov rsi, qword [rsp + 0x1f8]
mov rcx, qword [rsi]
mov qword [rax], rcx
lea rcx, [rsi + 8]
lea rdi, [rax + 8]
mov rax, rsi
mov rsi, rcx
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465eee
mov rbp, qword [rbp]
jmp 0x5f47bd
mov rbx, rax
mov rcx, qword [rsp + 0x1f8]
lea rax, [0x0069bf40]
call fcn.00413e40
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rax + 0x38]
mov rax, rcx
call fcn.005f7de0
mov rdi, qword [rsp + 0xe0]
test byte [rdi], al
cmp dword [0x008f2cf0], 0
jne 0x5f47e2
mov qword [rdi + 0x38], rax
jmp 0x5f47eb
add rdi, 0x38
call fcn.004654a0
lea rax, [rsp + 0x90]
mov rbx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x40]
lea rdi, [0x007169c0]
mov esi, 1
mov r8, qword [rsp + 0xb0]
mov r9, qword [rsp + 0x38]
call fcn.0044e800
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0x70]
call fcn.0044ed00
mov rdx, qword [0x0089c460]
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, rdx
call fcn.00541fc0
mov rdx, qword [rsp + 0xe0]
mov rdx, qword [rdx + 0x38]
mov qword [rsp + 0xe8], rdx
mov ecx, 6
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006a499e]
call fcn.0044e760
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x48], rbx
nop
lea rax, [0x006a6a51]
mov ebx, 0xd
call fcn.005d4480
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x58], rbx
lea rax, [0x00658b60]
call fcn.0040d960
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0x48]
mov qword [rax + 8], rdx
cmp dword [0x008f2cf0], 0
jne 0x5f48d2
mov rdx, qword [rsp + 0xc8]
mov qword [rax], rdx
jmp 0x5f48e5
mov rdi, rax
mov rdx, qword [rsp + 0xc8]
nop dword [rax]
call fcn.004655c0
lea rax, [0x00684fa0]
mov rbx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x108]
mov rdi, qword [rsp + 0x58]
call fcn.004131e0
mov qword [rax + 8], 1
mov qword [rax + 0x10], 1
cmp dword [0x008f2cf0], 0
jne 0x5f492c
mov rdx, qword [rsp + 0x100]
mov qword [rax], rdx
jmp 0x5f493c
mov rdi, rax
mov rdx, qword [rsp + 0x100]
call fcn.004655c0
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
mov qword [rsp + 0x160], rdi
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x170], r8
mov rdx, qword [rsp + 0x160]
bt rdx, 0x3f
jae 0x5f49a6
mov r9, rdx
shl rdx, 1
shr rdx, 0x1f
movabs r10, 0xdd7b17f80
add rdx, r10
jmp 0x5f49b6
mov r9, rdx
movabs r10, 0xdd7b17f80
mov rdx, rsi
test rdx, rdx
jne 0x5f49cb
and r9d, 0x3fffffff
test r9d, r9d
je 0x5f4a78
nop
cmp qword [rsp + 0xe0], rax
jne 0x5f4a78
lea rax, [0x0069bf40]
call fcn.0040d960
mov qword [rsp + 0xe0], rax
cmp dword [0x008f2cf0], 0
jne 0x5f4a35
mov rsi, qword [rsp + 0x1f8]
mov rdx, qword [rsi]
mov qword [rax], rdx
add rsi, 8
lea rdi, [rax + 8]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465eee
mov rbp, qword [rbp]
jmp 0x5f4a4c
mov rbx, rax
mov rcx, qword [rsp + 0x1f8]
lea rax, [0x0069bf40]
call fcn.00413e40
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
movabs r10, 0xdd7b17f80
mov rax, qword [rsp + 0xe0]
call fcn.005f52a0
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xf8], rbx
mov rdx, qword [rsp + 0xe0]
mov r9, qword [rsp + 0x200]
mov r10, qword [r9 + 0x18]
mov rax, qword [rsp + 0x208]
mov rbx, rdx
call r10
mov qword [rsp + 0xf0], rax
nop
test rbx, rbx
jne 0x5f4e6e
test rax, rax
je 0x5f4df6
cmp qword [rax + 0x40], 0
je 0x5f4ae5
mov rdi, rax
nop dword [rax]
jmp 0x5f4cbe
cmp qword [rax + 0x50], 0
jle 0x5f4bbe
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rcx]
cmp qword [rcx + 8], 4
je 0x5f4b0f
mov rcx, qword [rsp + 0x200]
test rcx, rcx
jmp 0x5f4b26
cmp dword [rdx], 0x44414548
je 0x5f4bbe
mov rcx, qword [rsp + 0x200]
test rcx, rcx
movups xmmword [rsp + 0x178], xmm15
movups xmmword [rsp + 0x188], xmm15
je 0x5f4b42
mov rbx, qword [rcx + 8]
nop
jmp 0x5f4b45
mov rbx, rcx
mov qword [rsp + 0x178], rbx
mov rcx, qword [rsp + 0x208]
mov qword [rsp + 0x180], rcx
mov rax, qword [rax + 0x50]
call fcn.0040af40
lea rcx, [0x00656fe0]
mov qword [rsp + 0x188], rcx
mov qword [rsp + 0x190], rax
lea rax, [0x006b8b50]
mov ebx, 0x61
lea rcx, [rsp + 0x178]
mov edi, 2
mov rsi, rdi
call fcn.004f54c0
mov rcx, rax
mov rdi, rbx
xor eax, eax
mov rbx, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
lea rax, [0x0067f120]
call fcn.0040d960
mov qword [rsp + 0xc0], rax
mov qword [rax], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xffffffffffffffff
lea rbx, [0x00719600]
mov rcx, rax
lea rax, [0x0066a7c0]
call fcn.0040b260
nop
test rax, rax
je 0x5f4c4e
movups xmmword [rsp + 0x128], xmm15
lea rcx, [0x00719600]
mov qword [rsp + 0x128], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x130], rcx
lea rax, [0x0067d320]
lea rbx, [rsp + 0x128]
nop dword [rax]
call fcn.0040ad40
lea rcx, [0x0071ab08]
jmp 0x5f4c91
movups xmmword [rsp + 0x118], xmm15
lea rcx, [0x00719600]
mov qword [rsp + 0x118], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x120], rcx
lea rax, [0x006796c0]
lea rbx, [rsp + 0x118]
call fcn.0040ad40
lea rcx, [0x0071aae0]
mov rdi, qword [rsp + 0xf0]
mov qword [rdi + 0x40], rcx
cmp dword [0x008f2cf0], 0
jne 0x5f4cac
mov qword [rdi + 0x48], rax
jmp 0x5f4cbe
lea rdx, [rdi + 0x48]
mov rcx, rdi
mov rdi, rdx
call fcn.004654a0
mov rdi, rcx
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x150], rdx
mov rsi, qword [rsp + 0x110]
mov qword [rsp + 0x158], rsi
mov rsi, qword [rsp + 0x148]
bt rsi, 0x3f
jae 0x5f4d10
mov rdx, rsi
shl rsi, 1
shr rsi, 0x1f
movabs r8, 0xdd7b17f80
add rsi, r8
jmp 0x5f4d18
mov rdx, rsi
mov rsi, qword [rsp + 0x60]
test rsi, rsi
jne 0x5f4d2b
and edx, 0x3fffffff
test edx, edx
je 0x5f4ddd
lea rax, [0x0067d9e0]
call fcn.0040d960
cmp dword [0x008f2cf0], 0
nop
jne 0x5f4d4f
mov rdx, qword [rsp + 0xd8]
mov qword [rax], rdx
jmp 0x5f4d5f
mov rdi, rax
mov rdx, qword [rsp + 0xd8]
call fcn.004655c0
mov rdi, qword [rsp + 0xf0]
mov rdx, qword [rdi + 0x48]
mov rsi, qword [rdi + 0x40]
mov qword [rax + 8], rsi
cmp dword [0x008f2cf0], 0
jne 0x5f4d8e
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0xf8]
mov qword [rax + 0x18], rdx
jmp 0x5f4db1
lea rsi, [rax + 0x10]
mov rcx, rdi
mov rdi, rsi
call fcn.004655c0
lea rdi, [rax + 0x18]
mov rdx, qword [rsp + 0xf8]
call fcn.004655c0
mov rdi, rcx
lea rdx, [0x0071a568]
mov qword [rdi + 0x40], rdx
cmp dword [0x008f2cf0], 0
jne 0x5f4dcb
mov qword [rdi + 0x48], rax
jmp 0x5f4ddd
lea rdx, [rdi + 0x48]
mov rcx, rdi
mov rdi, rdx
call fcn.004654a0
mov rdi, rcx
mov rax, rdi
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
movups xmmword [rsp + 0x138], xmm15
mov rdx, qword [rsp + 0x200]
test rdx, rdx
je 0x5f4e12
mov rbx, qword [rdx + 8]
jmp 0x5f4e15
mov rbx, rdx
mov qword [rsp + 0x138], rbx
mov rdx, qword [rsp + 0x208]
mov qword [rsp + 0x140], rdx
lea rax, [0x006b8485]
mov ebx, 0x50
lea rcx, [rsp + 0x138]
mov edi, 1
mov rsi, rdi
call fcn.004f54c0
mov rcx, rax
mov rdi, rbx
xor eax, eax
mov rbx, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x50], rbx
mov rdx, qword [rsp + 0xd8]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x5f4ead
lea rax, [0x006b6a57]
mov ebx, 0x3b
xor ecx, ecx
xor edi, edi
mov rsi, rdi
call fcn.005d0ba0
mov rdx, qword [rsp + 0x50]
lea rsi, [0x00719820]
cmp rdx, rsi
jne 0x5f4eeb
mov rsi, qword [rsp + 0x108]
mov r8, qword [rsi]
mov qword [rsp + 0x1c0], r8
movups xmm0, xmmword [rsi + 8]
movups xmmword [rsp + 0x1c8], xmm0
movups xmm0, xmmword [rsi + 0x18]
movups xmmword [rsp + 0x1d8], xmm0
jmp 0x5f4f0e
movups xmmword [rsp + 0x1c0], xmm15
movups xmmword [rsp + 0x1c8], xmm15
movups xmmword [rsp + 0x1d8], xmm15
mov rsi, qword [rsp + 0x108]
mov r8, qword [rsp + 0x1c0]
mov qword [rsp + 0x198], r8
movups xmm0, xmmword [rsp + 0x1c8]
movups xmmword [rsp + 0x1a0], xmm0
movups xmm0, xmmword [rsp + 0x1d8]
movups xmmword [rsp + 0x1b0], xmm0
nop
jne 0x5f4f82
cmp dword [rsp + 0x1a8], 0x50545448
jne 0x5f4f82
cmp byte [rsp + 0x1ac], 0x2f
jne 0x5f4f82
nop
lea rax, [0x0066df60]
call fcn.0040d960
mov qword [rax + 8], 0x2f
lea rcx, [0x006b4679]
mov qword [rax], rcx
lea rdx, [0x007191c0]
mov rsi, rax
xor eax, eax
mov rbx, qword [rsp + 0xf8]
mov rcx, rdx
mov rdi, rsi
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
nop
mov rcx, qword [rax + 0x40]
mov rax, qword [rax + 0x48]
test rcx, rcx
je 0x5f4fb6
mov rcx, qword [rcx + 0x18]
call rcx
lea rax, [0x0066df60]
nop dword [rax]
call fcn.0040d960
mov qword [rax + 8], 0x15
lea rcx, [0x006a9f7c]
mov qword [rax], rcx
lea rbx, [0x006d4728]
lea rcx, [0x007191c0]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
nop
mov rcx, qword [rax + 0x40]
mov rax, qword [rax + 0x48]
test rcx, rcx
je 0x5f500e
mov rcx, qword [rcx + 0x18]
call rcx
lea rax, [0x0066df60]
call fcn.0040d960
mov qword [rax + 8], 0x2d
lea rcx, [0x006b3aa5]
mov qword [rax], rcx
lea rbx, [0x006d4728]
lea rcx, [0x007191c0]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
call fcn.004632e0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp fcn.005f44c0