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

Disassembly:
lea r12, [rsp - 0xa8]
cmp r12, qword [r14 + 0x10]
jbe 0x432679
push rbp
mov rbp, rsp
sub rsp, 0x120
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rbx
test byte [rax], al
mov rsi, qword [0x01ec4648]
mov rdi, qword [0x01ec4650]
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xa8], rdi
movups xmmword [rsp + 0x110], xmm15
lea rsi, [0x004326a0]
mov qword [rsp + 0x110], rsi
lea rsi, [rsp + 0xa0]
mov qword [rsp + 0x118], rsi
xor ecx, ecx
xor edx, edx
mov rsi, 0xffffffffffffffff
xor edi, edi
jmp 0x431bc2
mov rcx, qword [rsp + 0xf8]
inc rcx
mov rax, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x98]
mov rsi, rdx
cmp rcx, 5
jge 0x431ce5
mov qword [rsp + 0x70], rsi
lea r8, [0x01ec7c20]
mov r9, qword [r8 + rcx*8]
mov r10, rcx
mov rcx, r9
mov r11d, 1
shl r11, cl
shl rdx, cl
lea r12, [r10 + r10*2]
mov r13, qword [rax + r12*8 + 0x10]
lea r15, [0x01ec7ca0]
mov rsi, qword [r15 + r10*8]
mov r12, qword [rax + r12*8]
cmp rcx, 0x40
sbb r9, r9
and r11, r9
and rdx, r9
lea rcx, [rdx + r11]
nop word [rax + rax]
cmp r13, rcx
jb 0x432670
cmp rdx, rcx
ja 0x432668
mov qword [rsp + 0x78], rdi
mov r9, rdx
sub rdx, r13
mov r13, r9
shl r9, 3
sar rdx, 0x3f
and r9, rdx
mov rcx, qword [rax + 0x10078]
mov rdx, r11
neg r11
movabs r15, 0x800000000000
add rcx, r15
mov qword [rsp + 0x100], rcx
lea r15, [0x01ec7c60]
mov r8, qword [r15 + r10*8]
mov rcx, r8
mov rdi, qword [rsp + 0x100]
shr rdi, cl
add r9, r12
cmp rcx, 0x40
sbb r8, r8
and rdi, r8
and r11, rdi
cmp r11, r13
jne 0x431ca4
lea r8, [rdx - 1]
and r8, rdi
jmp 0x431ca7
xor r8d, r8d
mov qword [rsp + 0xf8], r10
mov qword [rsp + 0xf0], rdx
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0x108], r9
mov qword [rsp + 0x80], r8
mov rcx, r8
xor edi, edi
xor r11d, r11d
nop dword [rax]
jmp 0x431f48
mov rsi, rdx
shr rdx, 0xd
cmp rdx, 0x2000
jae 0x431f38
mov qword [rsp + 0xf8], rsi
mov rdx, qword [rax + rdx*8 + 0x78]
test byte [rdx], al
and esi, 0x1fff
shl rsi, 7
add rdx, rsi
xor ecx, ecx
mov rax, rdx
call fcn.004347e0
nop
cmp rax, 0xffffffffffffffff
je 0x431da7
shl rax, 0xd
shl rbx, 0xd
mov rcx, qword [rsp + 0x110]
mov rsi, qword [rsp + 0xf8]
lea rdi, [rsi + 1]
shl rsi, 0x16
lea r8, [rsi + rax]
movabs r9, 0xffff800000000000
add r8, r9
mov qword [rsp + 0xb8], r8
add rsi, rbx
lea rax, [rsi + r9]
shl rdi, 0x16
sub rdi, rsi
mov rbx, rdi
lea rdx, [rsp + 0x110]
call rcx
mov rbx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x130]
call fcn.00431a60
mov rbx, rax
mov rax, qword [rsp + 0xb8]
add rsp, 0x120
pop rbp
ret
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rdx + 0x68]
mov rax, qword [rsp + 0xf8]
nop dword [rax + rax]
cmp rax, rcx
jae 0x431f33
mov rcx, qword [rdx + 0x60]
mov rcx, qword [rcx + rax*8]
mov rdx, rcx
and ecx, 0x1fffff
movabs rbx, 0x8000000000000000
test rbx, rdx
mov ebx, 0x200000
cmovne rcx, rbx
bt rdx, 0x3f
jae 0x431f1c
mov ebx, 0x200000
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rcx
jae 0x431f0d
mov edx, 0x200000
mov qword [rsp + 0x18], rdx
call fcn.00441a60
lea rax, [0x010992b5]
mov ebx, 0x11
call fcn.004422e0
mov eax, 4
call fcn.00442100
lea rax, [0x01087891]
mov ebx, 2
call fcn.004422e0
mov rax, qword [rsp + 0xf8]
call fcn.00442100
lea rax, [0x0108a1ad]
mov ebx, 5
call fcn.004422e0
mov rax, qword [rsp + 0x28]
call fcn.00442020
lea rax, [0x0108781f]
mov ebx, 2
nop
call fcn.004422e0
mov rax, qword [rsp + 0x20]
call fcn.00442020
lea rax, [0x0108781f]
mov ebx, 2
nop dword [rax + rax]
call fcn.004422e0
mov rax, qword [rsp + 0x18]
call fcn.00442020
lea rax, [0x01087885]
mov ebx, 2
nop dword [rax + rax]
call fcn.004422e0
call fcn.00441ac0
call fcn.00441a60
lea rax, [0x0109a73e]
mov ebx, 0x12
nop dword [rax + rax]
call fcn.004422e0
mov rax, qword [rsp + 0x138]
call fcn.00442020
call fcn.00441ca0
call fcn.00441ac0
lea rax, [0x01097ba8]
mov ebx, 0x10
call fcn.0043ffc0
shr rdx, 0x2a
and edx, 0x1fffff
jmp 0x431e15
mov rbx, rdx
shr rbx, 0x15
and ebx, 0x1fffff
bt rdx, 0x3f
jmp 0x431e00
call fcn.00479ec0
mov rax, rdx
mov ecx, 0x2000
call fcn.00479ee0
inc r8
cmp r8, rdx
jge 0x4321c4
jae 0x43265d
mov r12, qword [r9 + r8*8]
nop dword [rax + rax]
test r12, r12
jne 0x431f69
xor edi, edi
jmp 0x431f45
mov qword [rsp + 0x90], r8
mov qword [rsp + 0xe0], r12
mov qword [rsp + 0xb0], r11
mov qword [rsp + 0x60], rdi
mov rdi, qword [rsp + 0x110]
lea r9, [r8 + r13]
mov qword [rsp + 0x98], r9
mov rcx, rsi
mov ebx, 1
shl rbx, cl
mov r11, qword [r15 + r10*8]
mov rcx, r11
shl r9, cl
and r12d, 0x1fffff
mov qword [rsp + 0xd8], r12
cmp rsi, 0x40
sbb r13, r13
and rbx, r13
shl rbx, 0xd
cmp rcx, 0x40
sbb r11, r11
and r9, r11
movabs r11, 0xffff800000000000
add r9, r11
mov rax, r9
lea rdx, [rsp + 0x110]
call rdi
movabs rsi, 0x8000000000000000
mov rdi, qword [rsp + 0xe0]
test rdi, rsi
mov r8, qword [rsp + 0xd8]
mov r9d, 0x200000
cmovne r8, r9
mov r10, qword [rsp + 0x60]
lea r11, [r10 + r8]
mov rbx, qword [rsp + 0x138]
cmp rbx, r11
jbe 0x43215e
bt rdi, 0x3f
jae 0x43203f
mov eax, 0x200000
jmp 0x432052
mov r11, rdi
shr rdi, 0x15
and edi, 0x1fffff
mov rax, rdi
mov rdi, r11
cmp rbx, rax
jbe 0x431ba4
nop dword [rax + rax]
test r10, r10
jne 0x432071
bt rdi, 0x3f
mov rcx, qword [rsp + 0x68]
jmp 0x432093
mov rcx, qword [rsp + 0x68]
cmp rcx, 0x40
sbb r11, r11
mov r12d, 1
shl r12, cl
and r12, r11
cmp r8, r12
jae 0x432109
bt rdi, 0x3f
jae 0x4320a2
cmp rcx, 0x40
mov edi, 0x200000
nop
jmp 0x4320b0
shr rdi, 0x2a
and edi, 0x1fffff
cmp rcx, 0x40
sbb r11, r11
mov r8, qword [rsp + 0x90]
lea r10, [r8 + 1]
shl r10, cl
and r11, r10
sub r11, rdi
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0x68]
mov r9, qword [rsp + 0x108]
mov r10, qword [rsp + 0xf8]
mov r13, qword [rsp + 0xe8]
lea r15, [0x01ec7c60]
jmp 0x431f45
lea rdi, [r10 + r12]
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x108]
mov r10, qword [rsp + 0xf8]
mov r13, qword [rsp + 0xe8]
lea r15, [0x01ec7c60]
mov r11, qword [rsp + 0xb0]
jmp 0x431f45
mov rcx, qword [rsp + 0x68]
cmp rcx, 0x40
sbb rdx, rdx
mov r8, qword [rsp + 0x90]
shl r8, cl
and r8, rdx
test r10, r10
mov rdx, qword [rsp + 0xb0]
cmove rdx, r8
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x80]
mov r9, qword [rsp + 0x108]
mov r10, qword [rsp + 0xf8]
mov r13, qword [rsp + 0xe8]
lea r15, [0x01ec7c60]
mov rdi, r11
mov r11, rdx
mov rdx, qword [rsp + 0xf0]
cmp rbx, rdi
jbe 0x432468
test r10, r10
je 0x432456
mov rsi, qword [rsp + 0x78]
mov rdi, rsi
and esi, 0x1fffff
movabs r8, 0x8000000000000000
test r8, rdi
mov r11d, 0x200000
cmovne rsi, r11
bt rdi, 0x3f
jae 0x43220a
mov r12d, 0x200000
jmp 0x43222f
mov r12, rdi
shr rdi, 0x15
and edi, 0x1fffff
bt r12, 0x3f
mov r8, rdi
mov rdi, r12
mov r12, r8
movabs r8, 0x8000000000000000
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], rsi
jae 0x432242
mov edi, 0x200000
jmp 0x43224c
shr rdi, 0x2a
and edi, 0x1fffff
mov qword [rsp + 0x48], rdi
call fcn.00441a60
lea rax, [0x010992b5]
mov ebx, 0x11
call fcn.004422e0
mov rax, qword [rsp + 0xf8]
lea rcx, [rax - 1]
mov rax, rcx
call fcn.00442100
lea rax, [0x01087891]
mov ebx, 2
call fcn.004422e0
mov rax, qword [rsp + 0x70]
call fcn.00442100
lea rax, [0x010887e0]
mov ebx, 4
call fcn.004422e0
mov rax, qword [rsp + 0x58]
call fcn.00442020
lea rax, [0x0108781f]
mov ebx, 2
nop dword [rax]
call fcn.004422e0
mov rax, qword [rsp + 0x50]
call fcn.00442020
lea rax, [0x0108781f]
mov ebx, 2
nop dword [rax + rax]
call fcn.004422e0
mov rax, qword [rsp + 0x48]
call fcn.00442020
call fcn.00441ca0
call fcn.00441ac0
call fcn.00441a60
lea rax, [0x010992c6]
mov ebx, 0x11
call fcn.004422e0
mov rax, qword [rsp + 0xf8]
call fcn.00442100
lea rax, [0x01091d00]
mov ebx, 0xb
call fcn.004422e0
mov rax, qword [rsp + 0x138]
call fcn.00442020
lea rax, [0x0108cfff]
mov ebx, 7
call fcn.004422e0
mov rax, qword [rsp + 0x80]
call fcn.00442100
call fcn.00441ca0
nop dword [rax]
call fcn.00441ac0
mov rax, qword [rsp + 0x130]
mov rax, qword [rax + 0x10078]
mov qword [rsp + 0x100], rax
nop dword [rax]
call fcn.00441a60
lea rax, [0x010a431b]
mov ebx, 0x18
call fcn.004422e0
mov rax, qword [rsp + 0x100]
nop
call fcn.00442160
lea rax, [0x0108b966]
mov ebx, 6
call fcn.004422e0
mov rax, qword [rsp + 0xe8]
nop
call fcn.00442100
call fcn.00441ca0
call fcn.00441ac0
mov rax, qword [rsp + 0xf8]
lea rcx, [0x01ec7c60]
mov rcx, qword [rcx + rax*8]
mov qword [rsp + 0xd0], rcx
lea rdx, [0x01ec7c20]
mov rdx, qword [rdx + rax*8]
mov qword [rsp + 0xc8], rdx
nop dword [rax]
call fcn.00441a60
lea rax, [0x010ae19f]
mov ebx, 0x1d
call fcn.004422e0
mov rax, qword [rsp + 0xd0]
nop
call fcn.00442020
lea rax, [0x0109ef11]
mov ebx, 0x15
call fcn.004422e0
mov rax, qword [rsp + 0xc8]
nop
call fcn.00442020
call fcn.00441ca0
call fcn.00441ac0
xor eax, eax
jmp 0x4325b5
mov rbx, qword [0x01ec4650]
xor eax, eax
add rsp, 0x120
pop rbp
ret
shl r11, 0xd
mov qword [rsp + 0x100], r11
mov rbx, qword [rsp + 0xa0]
mov rcx, qword [r15 + r10*8]
mov qword [rsp + 0xd0], rcx
shl r13, cl
mov qword [rsp + 0xc0], r13
call fcn.00431a60
mov rdx, qword [rsp + 0xd0]
cmp rdx, 0x40
sbb rdx, rdx
mov rsi, qword [rsp + 0xc0]
and rsi, rdx
mov rdx, qword [rsp + 0x100]
add rdx, rsi
movabs rsi, 0xffff800000000000
add rdx, rsi
mov rbx, rax
mov rax, rdx
add rsp, 0x120
pop rbp
ret
mov qword [rsp + 0x30], rsi
nop
call fcn.00441a60
lea rax, [0x010992b5]
mov ebx, 0x11
call fcn.004422e0
mov rax, qword [rsp + 0xf8]
nop
call fcn.00442100
lea rax, [0x01087891]
mov ebx, 2
call fcn.004422e0
mov rax, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x88]
lea rdx, [rcx + rax]
mov rax, rdx
call fcn.00442100
lea rax, [0x0108a1ad]
mov ebx, 5
nop
call fcn.004422e0
mov rax, qword [rsp + 0x40]
call fcn.00442020
lea rax, [0x0108781f]
mov ebx, 2
nop dword [rax + rax]
call fcn.004422e0
mov rax, qword [rsp + 0x38]
call fcn.00442020
lea rax, [0x0108781f]
mov ebx, 2
nop dword [rax + rax]
call fcn.004422e0
mov rax, qword [rsp + 0x30]
call fcn.00442020
lea rax, [0x01087885]
mov ebx, 2
nop dword [rax + rax]
call fcn.004422e0
call fcn.00441ac0
mov rax, qword [rsp + 0x88]
inc rax
mov rcx, qword [rsp + 0xf0]
nop dword [rax]
cmp rax, rcx
jge 0x43264c
mov rdx, qword [rsp + 0x108]
mov rbx, qword [rdx + rax*8]
mov rsi, rbx
and ebx, 0x1fffff
movabs rdi, 0x8000000000000000
test rdi, rsi
mov r8d, 0x200000
cmovne rbx, r8
bt rsi, 0x3f
jae 0x432604
mov r9d, 0x200000
jmp 0x43261f
mov r9, rsi
shr rsi, 0x15
and esi, 0x1fffff
bt r9, 0x3f
mov r10, rsi
mov rsi, r9
mov r9, r10
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], rbx
jae 0x43263d
mov esi, 0x200000
jmp 0x4324d9
shr rsi, 0x2a
and esi, 0x1fffff
jmp 0x4324d9
lea rax, [0x01097ba8]
mov ebx, 0x10
call fcn.0043ffc0
mov rax, r8
mov rcx, rdx
call fcn.00479ec0
mov rax, rdx
call fcn.00479f80
mov rdx, r13
call fcn.00479f40
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.00477be0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.00431b20