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

Disassembly:
lea r12, [rsp - 0x18]
cmp r12, qword [r14 + 0x10]
jbe 0x593173
push rbp
mov rbp, rsp
sub rsp, 0x90
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xa0], rax
xor edx, edx
xor esi, esi
xor edi, edi
jmp 0x592920
mov rdx, r8
nop dword [rax]
cmp rbx, rdx
jle 0x592ccf
jbe 0x593167
mov qword [rsp + 0x50], rdx
mov byte [rsp + 0x46], dil
mov qword [rsp + 0x58], rsi
movzx r8d, byte [rax + rdx]
lea r9, [rax + rdx]
mov qword [rsp + 0x88], r9
cmp r8b, 0x25
jne 0x592b95
lea r8, [rdx + 2]
nop dword [rax]
cmp rbx, r8
jle 0x592c61
lea r10, [rdx + 1]
cmp rbx, r10
jbe 0x59315c
movzx r10d, byte [rax + rdx + 1]
lea r11d, [r10 - 0x30]
cmp r11b, 9
ja 0x59298b
cmp rbx, r8
jmp 0x5929ad
lea r12d, [r10 - 0x61]
cmp r12b, 5
ja 0x59299a
cmp rbx, r8
jmp 0x5929ad
lea r12d, [r10 - 0x41]
nop
cmp r12b, 5
ja 0x592c61
cmp rbx, r8
jbe 0x593151
movzx r8d, byte [rax + rdx + 2]
lea r12d, [r8 - 0x30]
nop dword [rax]
cmp r12b, 9
jbe 0x5929e0
lea r13d, [r8 - 0x61]
cmp r13b, 5
jbe 0x5929e0
lea r13d, [r8 - 0x41]
cmp r13b, 5
ja 0x592c61
nop
cmp rcx, 3
jne 0x592a77
cmp r11b, 9
ja 0x5929f5
mov r13d, r11d
jmp 0x592a2d
lea r13d, [r10 - 0x61]
cmp r13b, 5
ja 0x592a0e
lea r13d, [r10 - 0x57]
mov r15d, r13d
mov r13d, r11d
mov r11d, r15d
jmp 0x592a2d
lea r13d, [r10 - 0x41]
cmp r13b, 5
ja 0x592a27
lea r13d, [r10 - 0x37]
mov r15d, r13d
mov r13d, r11d
mov r11d, r15d
jmp 0x592a2d
mov r13d, r11d
xor r11d, r11d
cmp r11b, 8
jae 0x592a80
lea r11, [rdx + 3]
nop word [rax + rax]
cmp rbx, r11
jb 0x593146
cmp rdx, r11
ja 0x59313b
movzx r11d, word [rax + rdx]
nop word [rax + rax]
cmp r11w, 0x3225
jne 0x592c17
cmp r8b, 0x35
je 0x592a80
jmp 0x592c17
mov r13d, r11d
nop word [rax + rax]
cmp rcx, 4
jne 0x592b89
cmp r13b, 9
ja 0x592a96
cmp r12b, 9
jmp 0x592ad4
lea r11d, [r10 - 0x61]
nop word [rax + rax]
cmp r11b, 5
ja 0x592ab3
lea r11d, [r10 - 0x57]
cmp r12b, 9
mov r13d, r11d
jmp 0x592ad4
lea r11d, [r10 - 0x41]
cmp r11b, 5
ja 0x592aca
lea r11d, [r10 - 0x37]
cmp r12b, 9
mov r13d, r11d
jmp 0x592ad4
cmp r12b, 9
mov r13d, 0
jbe 0x592aff
lea r10d, [r8 - 0x61]
nop word [rax + rax]
cmp r10b, 5
ja 0x592aec
lea r12d, [r8 - 0x57]
jmp 0x592aff
lea r10d, [r8 - 0x41]
cmp r10b, 5
ja 0x592afc
lea r12d, [r8 - 0x37]
jmp 0x592aff
xor r12d, r12d
shl r13d, 4
lea r10, [rdx + 3]
or r12d, r13d
cmp rbx, r10
jb 0x593130
cmp rdx, r10
ja 0x593125
movzx r10d, word [rax + rdx]
cmp r10w, 0x3225
jne 0x592b2f
cmp r8b, 0x35
je 0x592b7b
cmp r12b, 0x20
jne 0x592b3a
xor r8d, r8d
jmp 0x592b80
mov eax, r12d
mov ebx, 3
call fcn.00592780
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x58]
movzx edi, byte [rsp + 0x46]
mov r9, qword [rsp + 0x88]
mov r8d, eax
mov rax, qword [rsp + 0xa0]
jmp 0x592b80
xor r8d, r8d
nop
test r8b, r8b
jne 0x592c3c
inc rsi
lea r8, [rdx + 3]
jmp 0x59291a
cmp r8b, 0x2b
jne 0x592bac
lea r8, [rdx + 1]
cmp rcx, 6
sete dil
jmp 0x59291a
cmp rcx, 3
je 0x592bb8
cmp rcx, 4
jne 0x592c02
cmp r8b, 0x80
jb 0x592bc3
xor r8d, r8d
jmp 0x592c05
mov eax, r8d
mov rbx, rcx
call fcn.00592780
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x58]
movzx edi, byte [rsp + 0x46]
mov r9, qword [rsp + 0x88]
mov r8d, eax
mov rax, qword [rsp + 0xa0]
jmp 0x592c05
xor r8d, r8d
test r8b, r8b
jne 0x592c9e
lea r8, [rdx + 1]
jmp 0x59291a
mov rax, r9
mov ebx, 3
nop
call fcn.0040a940
xor ebx, ebx
lea rcx, [0x007421e0]
mov rdi, rax
xor eax, eax
add rsp, 0x90
pop rbp
ret
mov rax, r9
mov ebx, 3
call fcn.0040a940
xor ebx, ebx
lea rcx, [0x007421e0]
mov rdi, rax
xor eax, eax
add rsp, 0x90
pop rbp
nop
ret
sub rbx, rdx
mov rcx, rbx
neg rbx
sar rbx, 0x3f
and rdx, rbx
add rax, rdx
cmp rcx, 3
jle 0x592c7f
mov ecx, 3
mov rbx, rcx
call fcn.0040a940
xor ebx, ebx
lea rcx, [0x007421e0]
mov rdi, rax
xor eax, eax
add rsp, 0x90
pop rbp
ret
lea rcx, [rdx + 1]
cmp rdx, rcx
ja 0x593118
mov rax, r9
mov ebx, 1
call fcn.0040a940
xor ebx, ebx
lea rcx, [0x00742200]
mov rdi, rax
xor eax, eax
add rsp, 0x90
pop rbp
ret
test rsi, rsi
jne 0x592ce6
test dil, dil
jne 0x592ce6
xor ecx, ecx
xor edi, edi
add rsp, 0x90
pop rbp
ret
movups xmmword [rsp + 0x68], xmm15
movups xmmword [rsp + 0x78], xmm15
shl rsi, 1
mov rcx, rbx
sub rcx, rsi
lea rax, [rsp + 0x68]
mov rbx, rcx
call fcn.00471f00
mov rbx, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
xor eax, eax
jmp 0x592d28
lea rax, [r8 + 1]
cmp rbx, rax
jle 0x593075
jbe 0x593110
movzx r8d, byte [rax + rcx]
nop dword [rax]
cmp r8b, 0x25
jne 0x592e7b
lea r8, [rax + 1]
cmp rbx, r8
jbe 0x593105
movzx r8d, byte [rax + rcx + 1]
lea r9d, [r8 - 0x30]
cmp r9b, 9
jbe 0x592d8f
lea r9d, [r8 - 0x61]
cmp r9b, 5
ja 0x592d77
lea r9d, [r8 - 0x57]
jmp 0x592d8f
lea r9d, [r8 - 0x41]
nop dword [rax + rax]
cmp r9b, 5
ja 0x592d8c
lea r9d, [r8 - 0x37]
jmp 0x592d8f
xor r9d, r9d
lea r8, [rax + 2]
cmp rbx, r8
jbe 0x5930f8
movzx r10d, byte [rax + rcx + 2]
lea r11d, [r10 - 0x30]
cmp r11b, 9
jbe 0x592dcf
lea r11d, [r10 - 0x61]
cmp r11b, 5
ja 0x592dbc
lea r11d, [r10 - 0x57]
jmp 0x592dcf
lea r11d, [r10 - 0x41]
cmp r11b, 5
ja 0x592dcc
lea r11d, [r10 - 0x37]
jmp 0x592dcf
xor r11d, r11d
shl r9d, 4
mov r10, qword [rsp + 0x68]
nop
or r11d, r9d
nop
nop dword [rax]
test r10, r10
je 0x592df4
lea r9, [rsp + 0x68]
cmp r10, r9
je 0x592dfe
jmp 0x5930e5
lea r9, [rsp + 0x68]
mov qword [rsp + 0x68], r9
mov r9, qword [rsp + 0x80]
mov r10, qword [rsp + 0x78]
inc r10
mov rax, qword [rsp + 0x70]
cmp r9, r10
jae 0x592e6c
mov qword [rsp + 0x60], r8
mov byte [rsp + 0x45], r11b
mov rbx, r10
mov rcx, r9
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0x60]
movzx r11d, byte [rsp + 0x45]
mov r10, rbx
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x78], r10
mov byte [r10 + rax - 1], r11b
jmp 0x592d24
mov qword [rsp + 0x48], rax
cmp r8b, 0x2b
jne 0x592fce
cmp rdx, 6
jne 0x592f32
mov r8, qword [rsp + 0x68]
nop
nop
nop dword [rax + rax]
test r8, r8
je 0x592eb4
lea r9, [rsp + 0x68]
cmp r8, r9
je 0x592ebe
jmp 0x5930d0
lea r8, [rsp + 0x68]
mov qword [rsp + 0x68], r8
mov r8, qword [rsp + 0x80]
mov r9, qword [rsp + 0x78]
inc r9
mov r10, qword [rsp + 0x70]
cmp r8, r9
jae 0x592f22
mov rax, r10
mov rbx, r9
mov rcx, r8
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
mov r9, rbx
mov r10, rax
mov rax, qword [rsp + 0x48]
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x78], r9
mov byte [r9 + r10 - 1], 0x20
jmp 0x592fc6
mov r8, qword [rsp + 0x68]
nop
nop
test r8, r8
je 0x592f4d
lea r9, [rsp + 0x68]
cmp r8, r9
je 0x592f57
jmp 0x5930bd
lea r8, [rsp + 0x68]
mov qword [rsp + 0x68], r8
mov r8, qword [rsp + 0x80]
mov r9, qword [rsp + 0x78]
inc r9
mov r10, qword [rsp + 0x70]
cmp r8, r9
jae 0x592fbb
mov rax, r10
mov rbx, r9
mov rcx, r8
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
mov r9, rbx
mov r10, rax
mov rax, qword [rsp + 0x48]
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x78], r9
mov byte [r9 + r10 - 1], 0x2b
mov r8, rax
jmp 0x592d24
mov r9, qword [rsp + 0x68]
nop
test r9, r9
je 0x592fea
lea r10, [rsp + 0x68]
nop
cmp r9, r10
je 0x592ff4
jmp 0x5930aa
lea r9, [rsp + 0x68]
mov qword [rsp + 0x68], r9
mov r9, qword [rsp + 0x80]
mov r10, qword [rsp + 0x78]
inc r10
mov r11, qword [rsp + 0x70]
cmp r9, r10
jae 0x593063
mov byte [rsp + 0x47], r8b
mov rax, r11
mov rbx, r10
mov rcx, r9
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
movzx r8d, byte [rsp + 0x47]
mov r10, rbx
mov r11, rax
mov rax, qword [rsp + 0x48]
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x78], r10
mov byte [r10 + r11 - 1], r8b
mov r8, rax
jmp 0x592d24
mov rax, qword [rsp + 0x70]
mov rdx, rax
neg rdx
mov rbx, qword [rsp + 0x78]
cmp rbx, rdx
ja 0x593097
xor ecx, ecx
xor edi, edi
add rsp, 0x90
pop rbp
ret
test rax, rax
je 0x5930a5
nop dword [rax]
call fcn.00456d40
call fcn.00456d80
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
nop
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
mov rax, r8
mov rcx, rbx
nop
call fcn.004601e0
mov rax, r8
mov rcx, rbx
call fcn.004601e0
mov rcx, rbx
call fcn.004601e0
mov rax, rdx
nop dword [rax + rax]
call fcn.004602a0
mov rax, rdx
mov rcx, r10
call fcn.004602a0
mov rcx, r10
mov rdx, rbx
call fcn.00460220
mov rax, rdx
mov rcx, r11
call fcn.004602a0
mov rcx, r11
mov rdx, rbx
call fcn.00460220
mov rax, r8
mov rcx, rbx
call fcn.004601e0
mov rax, r10
mov rcx, rbx
call fcn.004601e0
mov rax, rdx
mov rcx, rbx
call fcn.004601e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.0045df00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.005928e0