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

Disassembly:
lea r12, [rsp - 0x3a0]
cmp r12, qword [r14 + 0x10]
jbe 0x5068ef
push rbp
mov rbp, rsp
sub rsp, 0x418
mov qword [rsp + 0x590], rax
mov qword [rsp + 0x5b8], r8
mov byte [rsp + 0x5c0], r9b
mov qword [rsp + 0x5b0], rsi
mov qword [rsp + 0x5a0], rcx
mov qword [rsp + 0x5a8], rdi
mov qword [rsp + 0x598], rbx
lea rdi, [rsp + 0x530]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov qword [rsp + 0x580], 0
mov qword [rsp + 0x586], 0
movups xmmword [rsp + 0x260], xmm15
mov word [rsp + 0x52a], 1
mov r11, qword [rsp + 0x428]
mov qword [rsp], r11
lea rdi, [rsp + 4]
lea rsi, [rsp + 0x42c]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
mov eax, r10d
call fcn.00504d20
nop dword [rax + rax]
test r10, r10
jne 0x505f3c
movzx edx, byte [rsp + 0x5c0]
test dl, dl
je 0x505ea9
movups xmmword [rsp + 0x310], xmm15
mov qword [rsp + 0x318], 3
lea rdx, [0x006c4a96]
mov qword [rsp + 0x310], rdx
lea rdx, [rsp + 0x310]
mov r10d, 1
jmp 0x505eff
movups xmmword [rsp + 0x2f0], xmm15
movups xmmword [rsp + 0x300], xmm15
mov qword [rsp + 0x2f8], 3
lea rdx, [0x006c4bb6]
mov qword [rsp + 0x2f0], rdx
mov qword [rsp + 0x308], 3
lea rdx, [0x006c4a96]
mov qword [rsp + 0x300], rdx
lea rdx, [rsp + 0x2f0]
mov r10d, 2
mov word [rsp + 0x1a6], ax
mov qword [rsp + 0x238], rdi
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x2d8], rbx
mov qword [rsp + 0x2e8], rsi
mov qword [rsp + 0x250], r9
mov qword [rsp + 0x248], r8
jmp 0x506000
lea rdi, [rsp + 0x530]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov qword [rsp + 0x580], 0
mov qword [rsp + 0x586], 0
mov rax, qword [0x0089a080]
mov rcx, qword [0x0089a088]
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rcx
call fcn.00433720
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
add rsp, 0x418
pop rbp
ret
mov rdx, qword [rsp + 0x410]
add rdx, 0x10
mov r10, qword [rsp + 0x258]
dec r10
movzx eax, word [rsp + 0x1a6]
mov rcx, qword [rsp + 0x230]
mov rbx, qword [rsp + 0x2d8]
mov rsi, qword [rsp + 0x2e8]
mov rdi, qword [rsp + 0x238]
mov r8, qword [rsp + 0x248]
mov r9, qword [rsp + 0x250]
nop
test r10, r10
jle 0x5065c1
mov qword [rsp + 0x258], r10
mov qword [rsp + 0x410], rdx
mov rax, qword [rdx]
mov qword [rsp + 0x2e0], rax
mov rcx, qword [rdx + 8]
mov qword [rsp + 0x240], rcx
call fcn.004ae7a0
mov rdi, qword [rsp + 0x5b8]
nop dword [rax]
call fcn.004adf20
nop
mov rdi, rbx
mov rsi, rcx
xor r8d, r8d
xor r9d, r9d
mov rbx, qword [rsp + 0x5a0]
mov rcx, rax
mov rax, qword [rsp + 0x598]
call fcn.004f7380
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x270], rbx
mov rax, rcx
nop dword [rax]
call fcn.00432fa0
test eax, eax
jne 0x5065a3
mov rax, qword [rsp + 0x590]
mov rbx, qword [rsp + 0x218]
mov rcx, qword [rsp + 0x270]
mov rdi, qword [rsp + 0x2e0]
mov rsi, qword [rsp + 0x240]
mov r8, qword [rsp + 0x5a8]
mov r9, qword [rsp + 0x5b0]
call fcn.00513d60
test rcx, rcx
jne 0x50651b
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x278], rbx
mov rcx, qword [rsp + 0x218]
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x270]
call rcx
test dil, dil
je 0x50616a
nop
bt rax, 0x3f
jae 0x506122
mov rdx, rax
shl rax, 1
shr rax, 0x1f
movabs r9, 0xdd7b17f80
lea r10, [r9 + rax]
nop
jmp 0x506132
mov rdx, rax
movabs r9, 0xdd7b17f80
mov r10, rbx
test r10, r10
jne 0x506146
mov r10, rdx
and edx, 0x3fffffff
test edx, edx
je 0x506174
jmp 0x506149
mov r10, rdx
mov rdx, qword [rsp + 0x220]
mov rsi, qword [rdx + 0x38]
mov rax, qword [rsp + 0x278]
mov rdi, rcx
mov rcx, rbx
mov rbx, r10
call rsi
jmp 0x506174
movabs r9, 0xdd7b17f80
lea rdi, [rsp + 0x288]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov qword [rsp + 0x198], 0
mov qword [rsp + 0x19e], 0
mov rax, qword [rsp + 0x220]
test rax, rax
je 0x5061cf
mov rbx, qword [rax + 8]
mov rdx, qword [0x0089c470]
mov r9, qword [rdx]
mov r10d, dword [rax + 0x10]
jmp 0x5068a9
mov rcx, rax
test rax, rax
je 0x50633e
lea rdi, [rsp + 0x320]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x428]
mov qword [rsp], rdx
lea rdi, [rsp + 4]
lea rsi, [rsp + 0x42c]
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
mov rax, rcx
mov rbx, qword [rsp + 0x278]
movzx ecx, word [rsp + 0x1a6]
mov rdi, qword [rsp + 0x2d8]
mov rsi, qword [rsp + 0x230]
mov r8, qword [rsp + 0x238]
nop
call fcn.00505260
lea rdi, [rsp + 0x320]
lea rsi, [rsp + 0x108]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046083a
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x158]
mov r9, qword [rsp + 0x15e]
mov qword [rsp + 0x1ee], rdx
mov qword [rsp + 0x1f4], r9
lea rdi, [rsp + 0x3c0]
lea rsi, [rsp + 0x320]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046083a
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x1ee]
mov r9, qword [rsp + 0x1f4]
mov qword [rsp + 0x20a], rdx
mov qword [rsp + 0x210], r9
lea rdi, [rsp + 0x288]
lea rsi, [rsp + 0x3c0]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046083a
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x20a]
mov r9, qword [rsp + 0x210]
mov qword [rsp + 0x198], rdx
mov qword [rsp + 0x19e], r9
jmp 0x506499
lea rdi, [rsp + 0x320]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x428]
mov qword [rsp], rdx
lea rdi, [rsp + 4]
lea rsi, [rsp + 0x42c]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004607a0
mov rbp, qword [rbp]
mov rax, rcx
mov rbx, qword [rsp + 0x278]
movzx ecx, word [rsp + 0x1a6]
mov rdi, qword [rsp + 0x2e8]
mov rsi, qword [rsp + 0x248]
mov r8, qword [rsp + 0x250]
nop
call fcn.00505680
lea rdi, [rsp + 0x320]
lea rsi, [rsp + 0x108]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046083a
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x158]
mov r9, qword [rsp + 0x15e]
mov qword [rsp + 0x1ee], rdx
mov qword [rsp + 0x1f4], r9
lea rdi, [rsp + 0x370]
lea rsi, [rsp + 0x320]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046083a
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x1ee]
mov r9, qword [rsp + 0x1f4]
mov qword [rsp + 0x1fc], rdx
mov qword [rsp + 0x202], r9
lea rdi, [rsp + 0x288]
lea rsi, [rsp + 0x370]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046083a
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x1fc]
mov r9, qword [rsp + 0x202]
mov qword [rsp + 0x198], rdx
mov qword [rsp + 0x19e], r9
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x280], rbx
mov rcx, qword [rsp + 0x220]
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x278]
call rcx
mov rax, qword [rsp + 0x228]
test rax, rax
jne 0x5067a1
lea rax, [rsp + 0x288]
call fcn.004fa860
nop dword [rax]
cmp qword [0x0089a790], rax
jne 0x5066fe
mov rcx, qword [0x0089a798]
call fcn.00405280
nop dword [rax]
test al, al
je 0x5066fe
cmp byte [rsp + 0x19f], 0
jne 0x505faf
jmp 0x506661
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1e6], 0
mov rax, rdi
lea rdi, [rsp + 0x530]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x1e6]
mov qword [rsp + 0x580], rdx
mov qword [rsp + 0x586], rbx
mov qword [rsp + 0x260], rcx
mov qword [rsp + 0x268], rax
call fcn.00433720
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
add rsp, 0x418
pop rbp
ret
call fcn.00433720
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
add rsp, 0x418
pop rbp
ret
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0x1ae], 0
mov rax, qword [0x0089a0b0]
mov rcx, qword [0x0089a0b8]
lea rdi, [rsp + 0x530]
lea rdi, [rdi - 0x30]
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x1a8]
mov rbx, qword [rsp + 0x1ae]
mov qword [rsp + 0x580], rdx
mov qword [rsp + 0x586], rbx
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rcx
call fcn.00433720
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
add rsp, 0x418
pop rbp
ret
mov rax, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x19e]
mov qword [rsp + 0x1b6], rax
mov qword [rsp + 0x1bc], rcx
lea rdi, [rsp + 0x530]
lea rsi, [rsp + 0x288]
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046083a
mov rbp, qword [rbp]
mov rax, qword [rsp + 0x1b6]
mov rcx, qword [rsp + 0x1bc]
mov qword [rsp + 0x580], rax
mov qword [rsp + 0x586], rcx
movups xmmword [rsp + 0x260], xmm15
nop dword [rax]
call fcn.00433720
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
add rsp, 0x418
pop rbp
ret
mov qword [rsp + 0x1c4], 0
mov qword [rsp + 0x1ca], 0
mov rax, qword [0x0089a0a0]
mov rcx, qword [0x0089a0a8]
lea rdi, [rsp + 0x530]
lea rdi, [rdi - 0x30]
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x1c4]
mov rbx, qword [rsp + 0x1ca]
mov qword [rsp + 0x580], rdx
mov qword [rsp + 0x586], rbx
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rcx
call fcn.00433720
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
add rsp, 0x418
pop rbp
ret
cmp qword [0x00899ff0], rax
jne 0x5067e0
mov rcx, qword [0x00899ff8]
mov rbx, qword [rsp + 0x280]
call fcn.00405280
nop
test al, al
je 0x5067d4
lea rax, [0x00742280]
lea rbx, [0x0092d4c0]
jmp 0x506824
mov rax, qword [rsp + 0x228]
nop dword [rax]
cmp qword [0x0089a000], rax
jne 0x50681c
mov rcx, qword [0x0089a008]
mov rbx, qword [rsp + 0x280]
call fcn.00405280
nop dword [rax]
test al, al
je 0x506814
mov rax, qword [0x0089a0f0]
mov rbx, qword [0x0089a0f8]
jmp 0x506824
mov rax, qword [rsp + 0x228]
mov rbx, qword [rsp + 0x280]
mov qword [rsp + 0x1d2], 0
mov qword [rsp + 0x1d8], 0
lea rdi, [rsp + 0x530]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004604d0
mov rbp, qword [rbp]
mov rcx, qword [rsp + 0x1d2]
mov rdx, qword [rsp + 0x1d8]
mov qword [rsp + 0x580], rcx
mov qword [rsp + 0x586], rdx
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rbx
call fcn.00433720
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
add rsp, 0x418
pop rbp
ret
mov r11, r10
and r10, r9
shl r10, 4
mov r12, qword [r10 + rdx + 8]
cmp r12, rbx
je 0x5068df
lea r10, [r11 + 1]
test r12, r12
jne 0x5068a9
lea rax, [0x0089c470]
call fcn.0040aaa0
mov rcx, qword [rsp + 0x220]
jmp 0x5061d2
mov rdx, qword [r10 + rdx + 0x10]
mov rcx, rax
mov rax, rdx
jmp 0x5061d2
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rbx
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x190], rsi
mov qword [rsp + 0x198], r8
mov byte [rsp + 0x1a0], r9b
mov byte [rsp + 0x1a1], r10b
call fcn.0045df00
mov rax, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x188]
mov rsi, qword [rsp + 0x190]
mov r8, qword [rsp + 0x198]
movzx r9d, byte [rsp + 0x1a0]
movzx r10d, byte [rsp + 0x1a1]
jmp fcn.00505d80