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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x422171
sub rsp, 0x38
mov qword [rsp + 0x30], rbp
lea rbp, [rsp + 0x30]
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
jmp 0x421ddb
lea rcx, [rbx + 1]
cmp rcx, 0x80
jge 0x422074
test byte [rax], al
cmp rcx, 0x80
jae 0x42216a
mov rbx, rcx
shl rcx, 4
lea rsi, [rax + rcx + 8]
mov rcx, qword [rax + rcx + 8]
test rcx, rcx
je 0x421dd7
mov qword [rsp + 0x28], rcx
mov qword [rsp], rsi
mov qword [rsp + 8], rcx
call fcn.004230a0
mov rax, qword [rsp + 0x28]
movzx ecx, byte [rax + 0x64]
cmp cl, 3
jne 0x42214f
mov rcx, qword [rax + 0x20]
mov rdx, qword [rsp + 0x48]
cmp rcx, rdx
jb 0x422134
mov qword [rsp + 0x20], rax
mov rbx, qword [rax + 0x78]
test rbx, rbx
ja 0x42202b
mov rcx, qword [rax + 0x20]
cmp rcx, rdx
ja 0x421eec
mov qword [rax + 0x70], 0
mov rcx, qword [rsp + 0x40]
test byte [rcx], al
mov rbx, qword [rax + 0x18]
sub rbx, qword [rcx + 0x1328]
shr rbx, 0xd
xor esi, esi
jmp 0x421e8c
mov qword [r8 + r9*8], rax
inc rsi
cmp rsi, rdx
jae 0x421ead
mov rdi, qword [rcx + 0x1050]
mov r8, qword [rcx + 0x1048]
lea r9, [rsi + rbx]
cmp r9, rdi
jb 0x421e85
jmp 0x422118
mov rcx, qword [rsp + 0x50]
mov rbx, qword [rcx]
shl rdx, 0xd
add rbx, rdx
mov qword [rcx], rbx
mov rcx, qword [0x00852900]
sub rcx, rdx
mov qword [0x00852900], rcx
mov rcx, qword [rax + 0x10]
test rcx, rcx
jne 0x4220fd
mov qword [rsp + 0x58], rax
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
mov rax, qword [rsp + 0x40]
test byte [rax], al
lea rcx, [rax + 0x34d0]
mov qword [rsp], rcx
call fcn.00416660
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
shl rcx, 0xd
mov rbx, qword [rsp + 0x20]
lea rsi, [rbx + 0x18]
add rcx, qword [rsi]
mov rsi, qword [rbx + 0x20]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], rcx
sub rsi, rdx
mov qword [rax + 0x20], rsi
mov dword [rax + 0x60], 0
mov qword [rax + 0x68], 0
mov byte [rax + 0x64], 0
movups xmmword [rax + 0x70], xmm0
movups xmmword [rax + 0x88], xmm0
mov byte [rax + 0x65], 0
mov qword [rax + 0x30], 0
movups xmmword [rax + 0x48], xmm0
mov qword [rbx + 0x20], rdx
mov rcx, qword [rax + 0x18]
mov rsi, qword [rsp + 0x40]
sub rcx, qword [rsi + 0x1328]
shr rcx, 0xd
test rcx, 0xffffffffffffffff
jbe 0x421fac
mov rdi, qword [rsi + 0x1050]
mov r8, qword [rsi + 0x1048]
lea r9, [rcx - 1]
cmp r9, rdi
jae 0x42212d
mov qword [r8 + rcx*8 - 8], rbx
mov rdi, qword [rsi + 0x1050]
mov r8, qword [rsi + 0x1048]
cmp rcx, rdi
jae 0x422126
mov qword [r8 + rcx*8], rax
mov rdi, qword [rsi + 0x1050]
mov r8, qword [rsi + 0x1048]
mov r9, qword [rax + 0x20]
lea rcx, [rcx + r9 - 1]
cmp rcx, rdi
jae 0x42211f
mov qword [r8 + rcx*8], rax
movzx ecx, byte [rbx + 0x65]
mov byte [rax + 0x65], cl
mov byte [rbx + 0x64], 2
mov byte [rax + 0x64], 2
mov rcx, qword [rbx + 0x70]
mov qword [rsp + 0x18], rcx
mov qword [rsp], rsi
mov qword [rsp + 8], rax
mov word [rsp + 0x10], 0
call fcn.00422580
mov rax, qword [rsp + 0x20]
mov byte [rax + 0x64], 3
mov rdx, qword [rsp + 0x48]
jmp 0x421e63
shl rcx, 0xd
mov rdx, qword [rax + 0x18]
mov qword [rsp + 8], rcx
mov qword [rsp], rdx
call fcn.00415030
mov rax, qword [0x00852910]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rcx + 0x78]
shl rdx, 0xd
sub rax, rdx
mov qword [0x00852910], rax
mov qword [rcx + 0x78], 0
mov rax, rcx
mov rdx, qword [rsp + 0x48]
jmp 0x421e56
mov qword [rsp], rax
mov qword [rsp + 8], rdx
call fcn.00422180
mov rax, qword [rsp + 0x10]
test rax, rax
jne 0x421e25
mov rax, qword [rsp + 0x40]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 8], rcx
call fcn.004221e0
movzx eax, byte [rsp + 0x10]
test al, al
je 0x4220ea
mov rax, qword [rsp + 0x40]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 8], rcx
call fcn.00422180
mov rax, qword [rsp + 0x10]
test rax, rax
jne 0x421e25
mov qword [rsp + 0x58], 0
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
mov qword [rsp + 0x58], 0
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
lea rax, [0x006ad4c4]
mov qword [rsp], rax
mov qword [rsp + 8], 0xd
call fcn.0042b3a0
ud2
call fcn.00429b50
ud2
call fcn.00429b50
ud2
call fcn.00429b50
ud2
call fcn.00429b50
ud2
lea rax, [0x006b3999]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1e
call fcn.0042b3a0
ud2
lea rax, [0x006b508e]
mov qword [rsp], rax
mov qword [rsp + 8], 0x22
call fcn.0042b3a0
ud2
call fcn.00429b50
ud2
call fcn.00452950
jmp fcn.00421da0