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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x424cd7
sub rsp, 0x50
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
lea rbx, [rdx - 1]
test rdx, rbx
jne 0x424c85
nop word [rax + rax]
test rdx, rdx
je 0x424c85
cmp rdx, 0x40
ja 0x424c32
mov rbx, qword [rsp + 0x70]
nop dword [rax + rax]
test rbx, rbx
jne 0x424c05
mov rax, rdx
mov qword [rsp + 0x40], rdx
mov rbx, qword [rsp + 0x60]
shr rbx, 6
mov rsi, qword [rsp + 0x58]
nop
jmp 0x4249da
mov rdi, qword [rsp + 0x28]
lea rbx, [rdi - 1]
mov rsi, qword [rsp + 0x58]
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x28], rbx
nop
test rbx, rbx
jl 0x424bfd
test byte [rsi], al
cmp rbx, 8
jae 0x424c25
mov rcx, qword [rsi + rbx*8]
or rcx, qword [rsi + rbx*8 + 0x40]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
call fcn.004245c0
cmp qword [rsp + 0x10], 0xffffffffffffffff
je 0x4249c2
mov rax, qword [rsp + 0x28]
nop dword [rax]
test rax, rax
jl 0x424bde
mov rdx, qword [rsp + 0x58]
test byte [rdx], al
cmp rax, 8
jae 0x424c1b
mov rcx, qword [rdx + rax*8]
or rcx, qword [rdx + rax*8 + 0x40]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 8], rcx
call fcn.004245c0
mov rax, qword [rsp + 0x10]
mov rcx, rax
not rax
bsr rax, rax
mov rdx, 0xffffffffffffffff
cmove rax, rdx
lea rbx, [rax - 0x3f]
neg rbx
cmp rbx, 0x40
sbb rbx, rbx
mov rsi, qword [rsp + 0x28]
mov rdi, rsi
shl rsi, 6
lea r8, [rax + rsi]
lea r8, [r8 + 1]
lea rsi, [rax + rsi]
lea rsi, [rsi + 1]
lea r9, [rax + 1]
neg r9
mov r10, rcx
mov rcx, r9
shl r10, cl
and r10, rbx
test r10, r10
je 0x424b44
bsr rax, r10
cmove rax, rdx
nop
add rax, 0xffffffffffffffc1
neg rax
mov rcx, qword [rsp + 0x40]
cmp rax, rcx
mov rdx, rax
cmova rax, rcx
mov rcx, rsi
sub rsi, rax
mov rbx, qword [0x00811268]
cmp rbx, 0x2000
jbe 0x424b3f
cmp qword [0x00811270], rbx
jae 0x424b3f
shr rbx, 0xd
nop
lea rdi, [rsi + rbx]
lea rdi, [rdi - 1]
neg rbx
and rdi, rbx
cmp r8, rdi
jb 0x424b3a
nop
sub rcx, rdx
and rbx, rsi
cmp rcx, rbx
ja 0x424b35
sub rsi, rbx
add rax, rsi
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rax
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
mov rbx, rsi
jmp 0x424b1e
mov rbx, rsi
jmp 0x424b1e
mov rbx, rsi
jmp 0x424b1e
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], rsi
inc rax
lea rcx, [rdi - 1]
jmp 0x424b6f
mov rbx, qword [rsp + 0x20]
dec rbx
mov rsi, qword [rsp + 0x38]
mov r8, qword [rsp + 0x30]
mov rax, rcx
mov rcx, rbx
test rcx, rcx
jl 0x424bd9
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + rcx*8]
or rdx, qword [rax + rcx*8 + 0x40]
mov qword [rsp], rdx
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 8], rdx
call fcn.004245c0
mov rax, qword [rsp + 0x10]
bsr rcx, rax
mov rdx, 0xffffffffffffffff
cmove rcx, rdx
inc rcx
mov rbx, qword [rsp + 0x18]
sub rbx, rcx
lea rcx, [rbx + 0x40]
test rax, rax
je 0x424b57
mov rsi, qword [rsp + 0x38]
mov r8, qword [rsp + 0x30]
mov rax, rcx
jmp 0x424ac6
mov rcx, rax
jmp 0x424bc7
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], 0
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
mov rax, rbx
jmp 0x424a23
lea rbx, [rbx + rdx]
lea rbx, [rbx - 1]
mov rax, rdx
neg rdx
and rdx, rbx
jmp 0x4249ac
mov ecx, 8
call fcn.0046cdc0
mov rax, rbx
mov ecx, 8
call fcn.0046cdc0
call fcn.0043aa00
lea rax, [0x0065cf84]
mov qword [rsp], rax
mov qword [rsp + 8], 0xf
call fcn.0043b480
mov rax, qword [rsp + 0x68]
mov qword [rsp], rax
call fcn.0043b100
nop
call fcn.0043ace0
call fcn.0043aaa0
lea rax, [0x0065c627]
mov qword [rsp], rax
mov qword [rsp + 8], 0xd
nop
call fcn.00439220
call fcn.0043aa00
lea rax, [0x0065cf84]
mov qword [rsp], rax
mov qword [rsp + 8], 0xf
nop
call fcn.0043b480
mov rax, qword [rsp + 0x68]
mov qword [rsp], rax
call fcn.0043b100
call fcn.0043ace0
call fcn.0043aaa0
lea rax, [0x00663c20]
mov qword [rsp], rax
mov qword [rsp + 8], 0x21
call fcn.00439220
nop
call fcn.0046abe0
nop dword [rax]
jmp fcn.00424940