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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x62a451
sub rsp, 0x70
mov qword [rsp + 0x68], rbp
lea rbp, [rsp + 0x68]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], rcx
mov rdx, qword [rax]
mov qword [rsp + 0x58], rdx
cmp dword [rax + 0x28], 0
jne 0x62a03f
mov rax, rdx
nop
call fcn.00628280
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
mov rsi, rax
xor eax, eax
mov r8d, 1
lock cmpxchg dword [rdx + 0x58], r8d
sete r9b
lea rax, [rdx + 0x58]
mov qword [rsp + 0x48], rax
nop dword [rax]
test r9b, r9b
jne 0x62a08f
call fcn.0046e660
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov r8d, 1
cmp qword [rsi + 0x140], 0
je 0x62a114
cmp qword [rsi + 0x158], 0
je 0x62a0a7
xor edi, edi
jmp 0x62a116
lea rax, [0x00677b80]
xor ebx, ebx
call fcn.00405660
cmp dword [0x0092b0b0], 0
jne 0x62a0cc
mov rbx, qword [rsp + 0x78]
mov qword [rbx + 0x158], rax
jmp 0x62a0e8
mov rdi, qword [rsp + 0x78]
lea rdx, [rdi + 0x158]
mov rcx, rdi
mov rdi, rdx
nop
call fcn.00465900
mov rbx, rcx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov r8d, 1
mov edi, 1
jmp 0x62a116
xor edi, edi
mov r9, qword [rsi + 0x158]
mov qword [rsp + 0x60], r9
nop
mov r10d, 0xffffffff
lock xadd dword [rdx + 0x58], r10d
dec r10d
test r10d, r10d
je 0x62a16f
mov byte [rsp + 0x2b], dil
mov ebx, r10d
nop
call fcn.0046e960
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
movzx edi, byte [rsp + 0x2b]
mov r8d, 1
mov r9, qword [rsp + 0x60]
test dil, dil
je 0x62a1b7
mov rcx, qword [rsi + 0x140]
mov rax, qword [rsi + 0x148]
mov rcx, qword [rcx + 0x18]
call rcx
mov rax, qword [rsp + 0x60]
call fcn.00406160
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov r8d, 1
mov r9, qword [rsp + 0x60]
test r9, r9
je 0x62a1e6
mov rax, r9
xor ebx, ebx
call fcn.004065a0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov r8d, 1
test rbx, rbx
je 0x62a232
cmp byte [rsi + 0x160], 0
je 0x62a232
mov rbx, qword [rsi + 0xe0]
xor eax, eax
nop dword [rax]
call fcn.00406fa0
test al, al
je 0x62a20f
xor eax, eax
xor ecx, ecx
jmp 0x62a21f
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x78]
mov r8d, 1
mov rbx, rax
test rbx, rbx
jne 0x62a28a
cmp byte [rsi + 0x161], 0
nop
je 0x62a261
cmp byte [rsi + 0x160], 0
jne 0x62a261
mov ebx, dword [rsi + 0x28]
mov rax, rdx
xor ecx, ecx
xor edi, edi
xor esi, esi
call fcn.00632900
mov rsi, qword [rsp + 0x78]
lea rax, [rsi + 0x30]
mov rcx, qword [0x008d5cd0]
mov rdi, qword [0x008d5cd8]
lea rbx, [rsi + 0x88]
xor esi, esi
nop dword [rax]
call fcn.006233c0
jmp 0x62a369
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x30], rbx
mov rax, rsi
call fcn.00624420
mov rax, qword [rsp + 0x78]
cmp byte [rax + 0x161], 0
je 0x62a34a
mov rdi, qword [rsp + 0x30]
lea rdx, [0x00743580]
cmp rdi, rdx
jne 0x62a2d1
mov rsi, qword [rsp + 0x50]
mov edx, dword [rsi + 4]
mov r8, qword [rsi + 8]
mov r9, qword [rsi + 0x10]
jmp 0x62a2e7
mov rsi, qword [rsp + 0x50]
mov r8d, 0
mov edx, 0
mov r9d, 0
jne 0x62a330
mov rcx, qword [0x008d5c28]
cmp qword [0x008d5c20], r8
jne 0x62a31f
mov dword [rsp + 0x2c], edx
mov rax, r8
mov rbx, r9
call fcn.00403fe0
test al, al
jne 0x62a345
mov rax, qword [rsp + 0x78]
mov edx, dword [rsp + 0x2c]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x30]
mov ebx, dword [rax + 0x28]
mov ecx, edx
mov rax, qword [rsp + 0x58]
call fcn.00632900
jmp 0x62a345
mov ebx, dword [rax + 0x28]
mov ecx, 8
mov rax, qword [rsp + 0x58]
nop dword [rax]
call fcn.00632900
mov rax, qword [rsp + 0x78]
lea rdx, [rax + 0x30]
lea rbx, [rax + 0x88]
mov rcx, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x50]
xor esi, esi
mov rax, rdx
call fcn.006233c0
mov rcx, qword [rsp + 0x78]
mov ebx, dword [rcx + 0x28]
test ebx, ebx
je 0x62a384
mov rax, qword [rsp + 0x58]
call fcn.0062d2a0
mov rcx, qword [rsp + 0x78]
xor eax, eax
mov rdx, qword [rsp + 0x58]
mov esi, 1
lock cmpxchg dword [rdx + 0x128], esi
sete sil
lea rax, [rdx + 0x128]
test sil, sil
jne 0x62a3c1
mov qword [rsp + 0x40], rax
call fcn.0046e660
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x58]
mov rsi, qword [rdx + 0x140]
test rsi, rsi
nop
mov ebx, 0xffffffff
lock xadd dword [rdx + 0x128], ebx
dec ebx
test ebx, ebx
jne 0x62a3e4
test rsi, rsi
jmp 0x62a400
mov qword [rsp + 0x38], rsi
call fcn.0046e960
mov rcx, qword [rsp + 0x38]
test rcx, rcx
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x58]
je 0x62a43b
nop
nop
lea rax, [0x00690f40]
call fcn.0040d960
mov qword [rax + 8], 0x3a
lea rcx, [0x006dc87a]
mov qword [rax], rcx
lea rbx, [0x00742c00]
mov rcx, rax
mov rax, qword [rsp + 0x58]
call fcn.00627a00
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + 0xe8]
call fcn.00406160
mov rbp, qword [rsp + 0x68]
add rsp, 0x70
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00463740
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00629fe0