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

Disassembly:
lea r12, [rsp - 0xc0]
cmp r12, qword [r14 + 0x10]
jbe 0x5b655d
sub rsp, 0x140
mov qword [rsp + 0x138], rbp
lea rbp, [rsp + 0x138]
mov rcx, qword [rax + 0x48]
cmp qword [rcx + 0x88], 0
jne 0x5b57be
cmp byte [rcx + 0xa0], 0
nop
jne 0x5b57be
lea rax, [0x006d8800]
call fcn.0040daa0
mov qword [rax + 8], 0x50
lea rcx, [0x0073188c]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x007f1c00]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
mov rdx, qword [rcx + 0x68]
mov rsi, qword [rcx + 0x70]
xor ebx, ebx
xor edi, edi
jmp 0x5b57e0
add r8, 0x10
inc rbx
lea rdi, [rdi + rdx]
lea rdi, [rdi + 1]
mov rdx, r8
nop
cmp rbx, rsi
jge 0x5b5840
mov r8, rdx
mov rdx, qword [rdx + 8]
test rdx, rdx
je 0x5b57fa
cmp rdx, 0xff
jle 0x5b57cc
lea rax, [0x006d8800]
call fcn.0040daa0
mov qword [rax + 8], 0x1d
lea rcx, [0x00725a82]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x007f1c00]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
cmp rdi, 0xffff
jg 0x5b5d59
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x100], rcx
mov rax, rcx
mov ebx, 1
call fcn.005ab980
test rbx, rbx
je 0x5b5d1d
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x80], rbx
mov rax, qword [rsp + 0x100]
mov ebx, 1
call fcn.005ab980
nop dword [rax]
test rbx, rbx
jne 0x5b58a9
xor edx, edx
jmp 0x5b58ac
movzx edx, word [rax]
mov word [rsp + 0x40], dx
lea rax, [0x006bb680]
mov ebx, 0x20
mov rcx, rbx
call fcn.0044a940
mov qword [rsp + 0x130], rax
mov ebx, 0x20
mov rcx, rbx
lea rax, [0x006bb680]
nop dword [rax]
call fcn.0044a940
mov qword [rsp + 0x128], rax
mov rdx, qword [rsp + 0x100]
mov rsi, qword [rdx + 0x80]
mov rbx, qword [rdx + 0x88]
mov rax, rsi
call fcn.005bb520
mov qword [rsp + 0x120], rax
mov qword [rsp + 0xa8], rbx
movzx edx, word [rsp + 0x40]
cmp dx, 0x303
mov esi, 0x303
cmova dx, si
mov word [rsp + 0x46], dx
mov rsi, qword [rsp + 0x100]
mov rdi, qword [rsi + 0x108]
mov r8, qword [rsi + 0x110]
mov r9, qword [rsi + 0x100]
test rdi, rdi
jne 0x5b596a
mov r9, qword [0x009a3a10]
mov rdi, qword [0x009a3a18]
mov r8, qword [0x009a3a20]
mov qword [rsp + 0xc0], r9
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x58], rdi
lea rax, [0x007119c0]
call fcn.0040daa0
mov qword [rsp + 0xf8], rax
movzx ecx, word [rsp + 0x46]
mov word [rax + 0x18], cx
lea rax, [0x006bd140]
call fcn.0040daa0
mov rdi, qword [rsp + 0xf8]
mov qword [rdi + 0x70], 1
mov qword [rdi + 0x78], 1
cmp dword [0x00a04ed0], 0
jne 0x5b59cc
mov qword [rdi + 0x68], rax
jmp 0x5b59de
lea rcx, [rdi + 0x68]
mov rdx, rdi
mov rdi, rcx
call fcn.00465a20
mov rdi, rdx
mov qword [rdi + 0x28], 0x20
mov qword [rdi + 0x30], 0x20
cmp dword [0x00a04ed0], 0
jne 0x5b5a05
mov rcx, qword [rsp + 0x130]
mov qword [rdi + 0x20], rcx
jmp 0x5b5a1f
lea rcx, [rdi + 0x20]
mov rax, rdi
mov rdi, rcx
mov rdx, qword [rsp + 0x130]
call fcn.00465b40
mov rdi, rax
mov qword [rdi + 0x40], 0x20
mov qword [rdi + 0x48], 0x20
cmp dword [0x00a04ed0], 0
jne 0x5b5a46
mov rcx, qword [rsp + 0x128]
mov qword [rdi + 0x38], rcx
jmp 0x5b5a60
lea rcx, [rdi + 0x38]
mov rax, rdi
mov rdi, rcx
mov rdx, qword [rsp + 0x128]
call fcn.00465b40
mov rdi, rax
mov byte [rdi + 0x90], 1
mov byte [rdi + 0x150], 1
mov rcx, qword [rsp + 0xa8]
mov qword [rdi + 0x88], rcx
cmp dword [0x00a04ed0], 0
jne 0x5b5a97
mov rcx, qword [rsp + 0x120]
mov qword [rdi + 0x80], rcx
jmp 0x5b5ab4
lea rcx, [rdi + 0x80]
mov rax, rdi
mov rdi, rcx
mov rdx, qword [rsp + 0x120]
call fcn.00465b40
mov rdi, rax
mov rcx, qword [rsp + 0x58]
mov qword [rdi + 0xa0], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rdi + 0xa8], rcx
cmp dword [0x00a04ed0], 0
jne 0x5b5ae6
mov rcx, qword [rsp + 0xc0]
mov qword [rdi + 0x98], rcx
jmp 0x5b5afd
lea rcx, [rdi + 0x98]
mov rdi, rcx
mov rdx, qword [rsp + 0xc0]
call fcn.00465b40
lea rax, [0x006bd140]
call fcn.0040daa0
mov rdi, qword [rsp + 0xf8]
mov qword [rdi + 0xb8], 1
mov qword [rdi + 0xc0], 1
cmp dword [0x00a04ed0], 0
jne 0x5b5b39
mov qword [rdi + 0xb0], rax
jmp 0x5b5b4e
lea rdx, [rdi + 0xb0]
mov rcx, rdi
mov rdi, rdx
call fcn.00465a20
mov rdi, rcx
mov byte [rdi + 0x118], 1
mov rdx, qword [rsp + 0x100]
mov rsi, qword [rdx + 0x68]
mov r8, qword [rdx + 0x70]
mov r9, qword [rdx + 0x78]
mov qword [rdi + 0x140], r8
mov qword [rdi + 0x148], r9
cmp dword [0x00a04ed0], 0
nop
jne 0x5b5b8b
mov qword [rdi + 0x138], rsi
jmp 0x5b5ba0
lea r8, [rdi + 0x138]
mov rax, rdi
mov rdi, r8
call fcn.00465b80
mov rdi, rax
mov rsi, qword [rsp + 0x80]
mov qword [rdi + 0x160], rsi
mov rsi, qword [rsp + 0x88]
mov qword [rdi + 0x168], rsi
cmp dword [0x00a04ed0], 0
jne 0x5b5bd8
mov rsi, qword [rsp + 0xd8]
mov qword [rdi + 0x158], rsi
jmp 0x5b5bf5
lea rsi, [rdi + 0x158]
mov rax, rdi
mov rdi, rsi
mov r8, qword [rsp + 0xd8]
call fcn.00465ba0
mov rdi, rax
mov rsi, qword [rsp + 0x148]
cmp qword [rsi + 0x50], 0
jle 0x5b5c48
mov qword [rdi + 0x128], 0xc
mov qword [rdi + 0x130], 0xc
add rsi, 0x141
cmp dword [0x00a04ed0], 0
jne 0x5b5c33
mov qword [rdi + 0x120], rsi
jmp 0x5b5c48
lea r8, [rdi + 0x120]
mov rax, rdi
mov rdi, r8
call fcn.00465b80
mov rdi, rax
mov rsi, qword [0x009a3950]
mov r8, qword [0x009a3958]
cmp byte [0x00a049e5], 0
jne 0x5b5c6d
mov rsi, qword [0x009a3970]
mov r8, qword [0x009a3978]
mov qword [rsp + 0x90], r8
mov qword [rsp + 0xe0], rsi
mov r9, qword [rdx + 0xa8]
mov r10, qword [rdx + 0xb0]
test r9, r9
jne 0x5b5c9e
mov r9, qword [0x009afe60]
mov r10, qword [0x009afe68]
mov qword [rsp + 0x50], r10
mov qword [rsp + 0xb8], r9
lea rax, [0x006bb5c0]
xor ebx, ebx
mov rcx, r10
call fcn.0044a940
mov rdi, qword [rsp + 0xf8]
mov qword [rdi + 0x58], 0
mov rdx, qword [rsp + 0x50]
mov qword [rdi + 0x60], rdx
lea rsi, [rdi + 0x50]
cmp dword [0x00a04ed0], 0
jne 0x5b5ce8
mov qword [rdi + 0x50], rax
jmp 0x5b5cf6
mov rcx, rdi
mov rdi, rsi
call fcn.00465a20
mov rdi, rcx
mov qword [rsp + 0x118], rsi
mov r9, qword [rsp + 0x90]
mov r10, qword [rsp + 0xe0]
mov r11, qword [rsp + 0xb8]
xor eax, eax
jmp 0x5b5da0
lea rax, [0x006d8800]
call fcn.0040daa0
mov qword [rax + 8], 0x3c
lea rcx, [0x007300a6]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x007f1c00]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
lea rax, [0x006d8800]
call fcn.0040daa0
mov qword [rax + 8], 0x20
lea rcx, [0x00727378]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x007f1c00]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
inc rax
nop dword [rax + rax]
cmp rax, r9
jge 0x5b5ea5
movzx r12d, word [r10 + rax*2]
xor ecx, ecx
jmp 0x5b6512
nop
mov r15, qword [0x009a3930]
mov rcx, r11
mov r11, qword [0x009a3938]
xor ebx, ebx
jmp 0x5b6531
xor ecx, ecx
test rcx, rcx
je 0x5b5d95
cmp word [rdi + 0x18], 0x303
jae 0x5b5de8
mov r13, qword [rcx + 0x28]
bt r13d, 2
jb 0x5b5d95
mov rbx, qword [rdi + 0x58]
inc rbx
mov r13, qword [rdi + 0x50]
mov rcx, qword [rdi + 0x60]
nop word [rax + rax]
cmp rcx, rbx
jae 0x5b5e96
mov qword [rsp + 0xa8], rax
mov word [rsp + 0x42], r12w
mov rax, r13
mov edi, 1
lea rsi, [0x006bb5c0]
call fcn.0044aa20
mov rdx, qword [rsp + 0xf8]
mov qword [rdx + 0x60], rcx
cmp dword [0x00a04ed0], 0
nop
jne 0x5b5e50
mov qword [rdx + 0x50], rax
mov rdi, qword [rsp + 0x118]
jmp 0x5b5e5d
mov rdi, qword [rsp + 0x118]
call fcn.00465a20
mov rdx, qword [rsp + 0x50]
mov rsi, rdi
mov rdi, qword [rsp + 0xf8]
mov r9, qword [rsp + 0x90]
mov r10, qword [rsp + 0xe0]
mov r11, qword [rsp + 0xb8]
movzx r12d, word [rsp + 0x42]
mov r13, rax
mov rax, qword [rsp + 0xa8]
mov qword [rdi + 0x58], rbx
mov word [r13 + rbx*2 - 2], r12w
jmp 0x5b5d95
mov rdx, qword [rsp + 0x100]
mov r9, qword [rdx]
mov r10, qword [rdx + 8]
test r9, r9
jne 0x5b5ec7
mov r9, qword [0x009af0d0]
mov r10, qword [0x009af0d8]
mov r8, qword [rdi + 0x28]
mov rcx, qword [rdi + 0x20]
mov rsi, qword [rdi + 0x30]
mov rax, r9
mov rbx, r10
mov rdi, r8
nop dword [rax]
call fcn.00498520
test rbx, rbx
jne 0x5b6472
mov rdx, qword [rsp + 0x100]
mov r9, qword [rdx]
mov r10, qword [rdx + 8]
nop dword [rax]
test r9, r9
jne 0x5b5f13
mov r9, qword [0x009af0d0]
mov r10, qword [0x009af0d8]
mov rdx, qword [rsp + 0xf8]
mov r8, qword [rdx + 0x40]
mov rcx, qword [rdx + 0x38]
mov rsi, qword [rdx + 0x48]
mov rax, r9
mov rbx, r10
mov rdi, r8
call fcn.00498520
test rbx, rbx
jne 0x5b63e6
mov rax, qword [rsp + 0xf8]
cmp word [rax + 0x18], 0x303
jb 0x5b5f8f
mov rdx, qword [0x009a3a30]
mov r8, qword [0x009a3a38]
mov r9, qword [0x009a3a40]
mov qword [rax + 0xf0], r8
mov qword [rax + 0xf8], r9
cmp dword [0x00a04ed0], 0
jne 0x5b5f83
mov qword [rax + 0xe8], rdx
jmp 0x5b5f8f
lea rdi, [rax + 0xe8]
call fcn.00465b40
mov rdx, qword [0x009afe80]
mov r8, qword [0x009afe88]
mov r9, qword [0x009afe90]
test rdx, rdx
je 0x5b5fd7
mov qword [rax + 0xf0], r8
mov qword [rax + 0xf8], r9
cmp dword [0x00a04ed0], 0
nop
jne 0x5b5fcb
mov qword [rax + 0xe8], rdx
jmp 0x5b5fd7
lea rdi, [rax + 0xe8]
call fcn.00465b40
mov rdx, qword [rax + 0x158]
cmp qword [rax + 0x160], 0
jbe 0x5b6505
cmp word [rdx], 0x304
jne 0x5b63cd
cmp byte [0x00a049e5], 0
nop
je 0x5b60df
mov rdi, qword [0x009a39d8]
mov rdx, qword [rax + 0x58]
lea rbx, [rdi + rdx]
mov rcx, qword [rax + 0x60]
mov rdx, qword [rax + 0x50]
nop dword [rax]
cmp rcx, rbx
jb 0x5b602a
mov rsi, rbx
jmp 0x5b6050
mov qword [rsp + 0xa0], rbx
mov rax, rdx
lea rsi, [0x006bb5c0]
nop dword [rax]
call fcn.0044aa20
mov rsi, qword [rsp + 0xa0]
mov rdx, rax
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0x110], rdx
mov qword [rsp + 0xa0], rcx
mov rdi, qword [0x009a39d8]
sub rsi, rdi
lea rax, [rdx + rsi*2]
mov rsi, qword [0x009a39d0]
shl rdi, 1
mov rbx, rsi
mov rcx, rdi
call fcn.00466860
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xf8]
mov qword [rsi + 0x58], rdx
mov rdx, qword [rsp + 0xa0]
mov qword [rsi + 0x60], rdx
cmp dword [0x00a04ed0], 0
jne 0x5b60c5
mov rdx, qword [rsp + 0x110]
mov qword [rsi + 0x50], rdx
jmp 0x5b61ab
mov rdi, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x110]
call fcn.00465b40
jmp 0x5b61ab
mov rdi, qword [0x009a39f8]
mov rdx, qword [rax + 0x58]
lea rbx, [rdi + rdx]
mov rcx, qword [rax + 0x60]
mov rdx, qword [rax + 0x50]
cmp rcx, rbx
jb 0x5b6102
mov rsi, rbx
nop
jmp 0x5b6124
mov qword [rsp + 0xa0], rbx
mov rax, rdx
lea rsi, [0x006bb5c0]
call fcn.0044aa20
mov rsi, qword [rsp + 0xa0]
mov rdx, rax
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x110], rdx
mov rdi, qword [0x009a39f8]
sub rsi, rdi
mov r8, qword [0x009a39f0]
lea rax, [rdx + rsi*2]
shl rdi, 1
mov rbx, r8
mov rcx, rdi
call fcn.00466860
mov rdx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xf8]
mov qword [rsi + 0x58], rdx
mov rdx, qword [rsp + 0xa8]
mov qword [rsi + 0x60], rdx
cmp dword [0x00a04ed0], 0
jne 0x5b6196
mov rdx, qword [rsp + 0x110]
mov qword [rsi + 0x50], rdx
jmp 0x5b61ab
mov rdi, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x110]
call fcn.00465b40
mov rdx, qword [rsp + 0x100]
mov rdi, qword [rdx + 0x108]
mov r8, qword [rdx + 0x100]
test rdi, rdi
jne 0x5b61d4
mov r8, qword [0x009a3a10]
mov rdi, qword [0x009a3a18]
test rdi, rdi
jbe 0x5b64fa
movzx ecx, word [r8]
nop
cmp cx, 0x18
ja 0x5b61f9
cmp cx, 0x17
je 0x5b620a
cmp cx, 0x18
je 0x5b620a
jmp 0x5b6391
cmp cx, 0x19
je 0x5b620a
nop
cmp cx, 0x1d
jne 0x5b6391
mov rdi, qword [rdx]
mov rdx, qword [rdx + 8]
test rdi, rdi
jne 0x5b6224
mov rdi, qword [0x009af0d0]
mov rdx, qword [0x009af0d8]
mov word [rsp + 0x44], cx
mov rax, rdi
mov rbx, rdx
call fcn.005d6bc0
test rbx, rbx
jne 0x5b6377
mov qword [rsp + 0xe8], rax
call fcn.00507740
mov qword [rsp + 0xf0], rax
lea rax, [0x006bc3c0]
call fcn.0040daa0
mov rcx, qword [rsp + 0xf0]
mov rdi, qword [rcx + 0x18]
mov rbx, qword [rcx + 0x10]
cmp rdi, 0x85
ja 0x5b6282
mov rcx, rdi
mov edx, 0x85
nop
jmp 0x5b62bc
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0x108], rbx
mov rbx, rdi
mov ecx, 0x85
lea rsi, [0x006bb680]
call fcn.0044aa20
mov rdi, rbx
mov rdx, rcx
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x108]
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x60], rdx
call fcn.00466860
lea rax, [0x006bcc60]
call fcn.0040daa0
movzx edx, word [rsp + 0x44]
mov word [rax], dx
mov rdx, qword [rsp + 0x48]
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0x60]
mov qword [rax + 0x18], rdx
cmp dword [0x00a04ed0], 0
jne 0x5b6310
mov rdx, qword [rsp + 0xb0]
mov qword [rax + 8], rdx
jmp 0x5b6325
lea rdi, [rax + 8]
mov rdx, qword [rsp + 0xb0]
nop dword [rax]
call fcn.00465b40
mov rdi, qword [rsp + 0xf8]
mov qword [rdi + 0x190], 1
mov qword [rdi + 0x198], 1
cmp dword [0x00a04ed0], 0
jne 0x5b6355
mov qword [rdi + 0x188], rax
jmp 0x5b636a
lea rdx, [rdi + 0x188]
mov rcx, rdi
mov rdi, rdx
call fcn.00465a20
mov rdi, rcx
mov rax, rdi
mov rcx, qword [rsp + 0xe8]
jmp 0x5b63cf
xor eax, eax
mov rdi, rcx
mov rcx, rbx
xor ebx, ebx
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
lea rax, [0x006d8800]
call fcn.0040daa0
mov qword [rax + 8], 0x30
lea rcx, [0x0072da4d]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x007f1c00]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
xor ecx, ecx
mov rbx, rcx
xor ecx, ecx
xor edi, edi
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
mov rdx, qword [rbx + 0x18]
mov rax, rcx
call rdx
mov ecx, 0x1b
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x00724866]
call fcn.0044e860
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x70], rbx
lea rax, [0x006d8800]
nop dword [rax]
call fcn.0040daa0
mov rcx, qword [rsp + 0x70]
mov qword [rax + 8], rcx
cmp dword [0x00a04ed0], 0
jne 0x5b6444
mov rdx, qword [rsp + 0xc8]
mov qword [rax], rdx
jmp 0x5b6454
mov rdi, rax
mov rdx, qword [rsp + 0xc8]
call fcn.00465b40
xor ebx, ebx
lea rcx, [0x007f1c00]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
mov rdx, qword [rbx + 0x18]
mov rax, rcx
call rdx
mov ecx, 0x1b
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x00724866]
call fcn.0044e860
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x78], rbx
lea rax, [0x006d8800]
call fcn.0040daa0
mov rcx, qword [rsp + 0x78]
mov qword [rax + 8], rcx
cmp dword [0x00a04ed0], 0
jne 0x5b64cc
mov rdx, qword [rsp + 0xd0]
mov qword [rax], rdx
jmp 0x5b64dc
mov rdi, rax
mov rdx, qword [rsp + 0xd0]
call fcn.00465b40
xor ebx, ebx
lea rcx, [0x007f1c00]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x138]
add rsp, 0x140
ret
xor eax, eax
mov rcx, rax
nop
call fcn.00465ec0
xor eax, eax
mov rcx, rax
call fcn.00465ec0
inc rcx
cmp rcx, rdx
jge 0x5b5dce
movzx r13d, word [r11 + rcx*2]
cmp r13w, r12w
jne 0x5b650f
jmp 0x5b5db5
inc rbx
mov r12d, r8d
cmp rbx, r11
jge 0x5b6549
mov r8d, r12d
mov r12, qword [r15 + rbx*8]
nop dword [rax]
cmp word [r12], r13w
jne 0x5b652b
jmp 0x5b654f
mov r8d, r12d
xor r12d, r12d
mov r11, rcx
mov rcx, r12
mov r12d, r8d
jmp 0x5b5dd0
mov qword [rsp + 8], rax
call fcn.00463860
mov rax, qword [rsp + 8]
jmp fcn.005b5740