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

Disassembly:
lea r12, [rsp - 0x78]
cmp r12, qword [r14 + 0x10]
jbe 0x569232
sub rsp, 0xf8
mov qword [rsp + 0xf0], rbp
lea rbp, [rsp + 0xf0]
mov rcx, qword [rax + 0x48]
cmp qword [rcx + 0x88], 0
jne 0x5689aa
cmp byte [rcx + 0xa0], 0
jne 0x5689aa
lea rax, [0x00658f2d]
mov ebx, 0x50
call fcn.00468600
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov rdx, qword [rcx + 0x70]
mov rsi, qword [rcx + 0x68]
test rdx, rdx
je 0x5689c5
xor ebx, ebx
xor edi, edi
nop dword [rax + rax]
jmp 0x5691d5
xor edx, edx
cmp rdx, 0xffff
jg 0x568cf9
mov qword [rsp + 0x100], rax
mov qword [rsp + 0xb8], rcx
mov rax, rcx
mov ebx, 1
call fcn.00561700
test rbx, rbx
je 0x568ccc
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0xb8]
mov ebx, 1
call fcn.005618c0
mov word [rsp + 0x46], ax
mov ebx, 0x20
mov rcx, rbx
lea rax, [0x005fe2e0]
call fcn.00448e60
mov qword [rsp + 0xe8], rax
mov ebx, 0x20
mov rcx, rbx
lea rax, [0x005fe2e0]
call fcn.00448e60
mov qword [rsp + 0xe0], rax
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rcx + 0x80]
mov rbx, qword [rcx + 0x88]
mov rax, rdx
call fcn.0056d5e0
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x88], rbx
mov rax, qword [rsp + 0xb8]
call fcn.00561920
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x78], rcx
lea rax, [0x0063e820]
call fcn.0040d1e0
mov qword [rsp + 0xa8], rax
movzx ecx, word [rsp + 0x46]
cmp cx, 0x303
mov edx, 0x303
cmova cx, dx
mov word [rax + 0x18], cx
lea rax, [0x005ff5a0]
nop dword [rax]
call fcn.0040d1e0
mov rcx, qword [rsp + 0xa8]
mov qword [rcx + 0x70], 1
mov qword [rcx + 0x78], 1
mov qword [rcx + 0x68], rax
mov qword [rcx + 0x28], 0x20
mov qword [rcx + 0x30], 0x20
mov rdx, qword [rsp + 0xe8]
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x40], 0x20
mov qword [rcx + 0x48], 0x20
mov rdx, qword [rsp + 0xe0]
mov qword [rcx + 0x38], rdx
mov byte [rcx + 0x90], 1
mov byte [rcx + 0x150], 1
mov rdx, qword [rsp + 0x88]
mov qword [rcx + 0x88], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rcx + 0x80], rdx
mov rdx, qword [rsp + 0x80]
mov qword [rcx + 0xa0], rdx
mov rdx, qword [rsp + 0x78]
mov qword [rcx + 0xa8], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rcx + 0x98], rdx
lea rax, [0x005ff5a0]
call fcn.0040d1e0
mov rcx, qword [rsp + 0xa8]
mov qword [rcx + 0xb8], 1
mov qword [rcx + 0xc0], 1
mov qword [rcx + 0xb0], rax
mov byte [rcx + 0x118], 1
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x68]
mov rsi, qword [rax + 0x70]
mov rdi, qword [rax + 0x78]
mov qword [rcx + 0x140], rsi
mov qword [rcx + 0x148], rdi
mov qword [rcx + 0x138], rdx
mov rdx, qword [rsp + 0x48]
mov qword [rcx + 0x160], rdx
mov rdx, qword [rsp + 0x50]
mov qword [rcx + 0x168], rdx
mov rdx, qword [rsp + 0x90]
mov qword [rcx + 0x158], rdx
mov rdx, qword [rsp + 0x100]
cmp qword [rdx + 0x50], 0
jle 0x568c4a
mov qword [rcx + 0x128], 0xc
mov qword [rcx + 0x130], 0xc
add rdx, 0x129
mov qword [rcx + 0x120], rdx
mov rdx, qword [0x007d4cb0]
mov rbx, qword [0x007d4cb8]
cmp byte [0x00837f66], 0
nop
jne 0x568c70
mov rdx, qword [0x007d4cd0]
mov rbx, qword [0x007d4cd8]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x98], rdx
nop dword [rax]
call fcn.005616c0
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rcx
lea rax, [0x005fe220]
mov rsi, rbx
xor ebx, ebx
mov rcx, rsi
call fcn.00448e60
mov rcx, qword [rsp + 0xa8]
mov qword [rcx + 0x58], 0
mov rbx, qword [rsp + 0x68]
mov qword [rcx + 0x60], rbx
mov qword [rcx + 0x50], rax
xor eax, eax
jmp 0x568d3a
lea rax, [0x00657c40]
mov ebx, 0x3c
call fcn.00468600
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
lea rax, [0x00650621]
mov ebx, 0x20
call fcn.00468600
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov rsi, qword [rsp + 0x88]
lea rax, [rsi + 1]
mov rcx, rdx
mov rbx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x58]
nop
cmp rax, rdx
jge 0x568df2
mov qword [rsp + 0x88], rax
mov rdx, qword [rsp + 0x98]
movzx edi, word [rdx + rax*2]
mov word [rsp + 0x42], di
mov rcx, qword [rsp + 0x70]
mov rax, qword [rsp + 0xb0]
call fcn.00561140
test rax, rax
je 0x568de5
mov rdx, qword [rsp + 0xa8]
cmp word [rdx + 0x18], 0x303
jae 0x568d94
mov r8, qword [rax + 0x28]
bt r8d, 2
jb 0x568d26
mov rcx, qword [rdx + 0x58]
lea rsi, [rcx + 1]
mov rbx, qword [rdx + 0x50]
mov rdi, qword [rdx + 0x60]
cmp rdi, rsi
jae 0x568dcb
lea rax, [0x005fe220]
call fcn.00448f20
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x60], rcx
mov qword [rdx + 0x50], rax
mov rcx, rbx
mov rbx, rax
lea rsi, [rcx + 1]
mov qword [rdx + 0x58], rsi
movzx esi, word [rsp + 0x42]
mov word [rbx + rcx*2], si
nop dword [rax]
jmp 0x568d26
mov rdx, qword [rsp + 0xa8]
jmp 0x568d26
mov rax, qword [rsp + 0xb8]
call fcn.00561640
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x20]
mov rdi, qword [rcx + 0x28]
mov rsi, qword [rcx + 0x30]
mov rcx, rdx
call fcn.00487160
nop dword [rax + rax]
test rbx, rbx
jne 0x56918b
mov rax, qword [rsp + 0xb8]
call fcn.00561640
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x38]
mov rdi, qword [rcx + 0x40]
mov rsi, qword [rcx + 0x48]
mov rcx, rdx
call fcn.00487160
test rbx, rbx
jne 0x569148
mov rax, qword [rsp + 0xa8]
cmp word [rax + 0x18], 0x303
jb 0x568e95
mov rdx, qword [0x007d4e70]
mov r8, qword [0x007d4e78]
mov r9, qword [0x007d4e80]
mov qword [rax + 0xf0], r8
mov qword [rax + 0xf8], r9
mov qword [rax + 0xe8], rdx
mov rdx, qword [rax + 0x158]
cmp word [rdx], 0x304
jne 0x56912a
cmp byte [0x00837f66], 0
je 0x568f58
mov rdx, qword [0x007d4d38]
mov rcx, qword [rax + 0x58]
lea rsi, [rdx + rcx]
mov qword [rsp + 0x88], rsi
mov rdi, qword [rax + 0x60]
mov rbx, qword [rax + 0x50]
cmp rdi, rsi
jae 0x568efa
mov qword [rsp + 0x80], rcx
lea rax, [0x005fe220]
call fcn.00448f20
mov rbx, rax
mov rdi, rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0xc8], rbx
lea rax, [rbx + rcx*2]
mov rdx, qword [0x007d4d30]
mov rcx, qword [0x007d4d38]
shl rcx, 1
mov rbx, rdx
call fcn.00461f80
mov rdx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xa8]
mov qword [rsi + 0x58], rdx
mov rdx, qword [rsp + 0x80]
mov qword [rsi + 0x60], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsi + 0x50], rdx
jmp 0x568ff7
mov rdx, qword [0x007d4d58]
mov rcx, qword [rax + 0x58]
lea rsi, [rdx + rcx]
mov qword [rsp + 0x88], rsi
mov rdi, qword [rax + 0x60]
mov rbx, qword [rax + 0x50]
cmp rdi, rsi
jae 0x568f9e
mov qword [rsp + 0x80], rcx
lea rax, [0x005fe220]
call fcn.00448f20
mov rbx, rax
mov rdi, rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0xc8], rbx
mov rdx, qword [0x007d4d50]
lea rax, [rbx + rcx*2]
mov rcx, qword [0x007d4d58]
shl rcx, 1
mov rbx, rdx
call fcn.00461f80
mov rdx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xa8]
mov qword [rsi + 0x58], rdx
mov rdx, qword [rsp + 0x80]
mov qword [rsi + 0x60], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsi + 0x50], rdx
mov rax, qword [rsp + 0xb8]
nop
call fcn.00561920
movzx eax, word [rax]
mov word [rsp + 0x44], ax
call fcn.0057a7c0
movzx edx, word [rsp + 0x44]
cmp dx, 0x1d
je 0x569051
nop dword [rax]
test cl, cl
jne 0x569051
lea rax, [0x00655c88]
mov ebx, 0x30
call fcn.00468600
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov rax, qword [rsp + 0xb8]
call fcn.00561640
movzx ecx, word [rsp + 0x44]
call fcn.0057a580
test rcx, rcx
jne 0x56910e
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x60], rax
mov rcx, qword [rax + 0x20]
mov rax, rbx
call rcx
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x80], rcx
lea rax, [0x005ff1e0]
call fcn.0040d1e0
movzx ecx, word [rsp + 0x44]
mov word [rax], cx
mov rcx, qword [rsp + 0x88]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x18], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0xa8]
mov qword [rcx + 0x190], 1
mov qword [rcx + 0x198], 1
mov qword [rcx + 0x188], rax
mov rax, rcx
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xa0]
jmp 0x56912e
xor eax, eax
xor ebx, ebx
mov rsi, rdi
mov rdi, rcx
xor ecx, ecx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
xor ecx, ecx
xor edx, edx
mov rbx, rcx
mov rcx, rdx
xor edi, edi
xor esi, esi
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
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, [0x0064df94]
call fcn.0044c9c0
call fcn.00468600
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
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, [0x0064df94]
call fcn.0044c9c0
call fcn.00468600
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
add rsi, 0x10
mov rbx, r9
mov r8, qword [rsi + 8]
test r8, r8
je 0x569205
nop
cmp r8, 0xff
jg 0x569205
lea r9, [rbx + 1]
lea rdi, [rdi + r8]
lea rdi, [rdi + 1]
cmp rdx, r9
jg 0x5691ce
mov rdx, rdi
nop dword [rax]
jmp 0x5689c7
lea rax, [0x0064f03b]
mov ebx, 0x1d
call fcn.00468600
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov qword [rsp + 8], rax
call fcn.0045f280
mov rax, qword [rsp + 8]
jmp fcn.00568940