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

Disassembly:
lea r12, [rsp - 0x1d0]
cmp r12, qword [r14 + 0x10]
jbe 0x50137e
sub rsp, 0x250
mov qword [rsp + 0x248], rbp
lea rbp, [rsp + 0x248]
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], rcx
mov qword [rsp + 0x270], rdi
mov qword [rsp + 0x288], r9
movups xmmword [rsp + 0x158], xmm15
movups xmmword [rsp + 0x148], xmm15
nop dword [rax + rax]
test r10, r10
je 0x500fce
mov qword [rsp + 0x290], r10
mov qword [rsp + 0x268], rcx
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x270], rdi
mov qword [rsp + 0x278], rsi
mov qword [rsp + 0x280], r8
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x298], r11
mov qword [rsp + 0x288], r9
lea rax, [0x00677b80]
xor ebx, ebx
call fcn.00405660
mov qword [rsp + 0x110], rax
movups xmmword [rsp + 0x178], xmm15
lea rcx, [0x005016c0]
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x180], rax
lea rcx, [rsp + 0x178]
mov qword [rsp + 0xe0], rcx
lea rax, [rsp + 0xc8]
nop
call fcn.004352a0
test eax, eax
jne 0x500f99
lea rax, [0x00677900]
xor ebx, ebx
call fcn.00405660
mov qword [rsp + 0x118], rax
lea rax, [0x006b0e00]
call fcn.0040d960
lea rcx, [0x00501520]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x278]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0x280]
mov qword [rax + 0x18], rcx
cmp dword [0x0092b0b0], 0
jne 0x500d28
mov rcx, qword [rsp + 0x270]
mov qword [rax + 8], rcx
jmp 0x500d39
lea rdi, [rax + 8]
mov rcx, qword [rsp + 0x270]
call fcn.00465a00
mov qword [rsp + 0x140], rax
mov rcx, qword [rsp + 0x290]
mov qword [rax + 0x28], rcx
mov rcx, qword [rsp + 0x298]
mov qword [rax + 0x30], rcx
cmp dword [0x0092b0b0], 0
jne 0x500d94
mov rcx, qword [rsp + 0x288]
mov qword [rax + 0x20], rcx
mov rcx, qword [rsp + 0x258]
mov qword [rax + 0x38], rcx
mov rdx, qword [rsp + 0x118]
mov qword [rax + 0x40], rdx
mov rsi, qword [rsp + 0x110]
mov qword [rax + 0x48], rsi
jmp 0x500dd8
lea rdi, [rax + 0x20]
mov rcx, qword [rsp + 0x288]
call fcn.00465a00
lea rdi, [rax + 0x38]
mov rcx, qword [rsp + 0x258]
call fcn.00465a00
lea rdi, [rax + 0x40]
mov rdx, qword [rsp + 0x118]
call fcn.00465a20
lea rdi, [rax + 0x48]
mov rsi, qword [rsp + 0x110]
call fcn.00465a60
movups xmmword [rsp + 0x1d0], xmm15
movups xmmword [rsp + 0x1d8], xmm15
movups xmmword [rsp + 0x1e8], xmm15
movups xmmword [rsp + 0x1f8], xmm15
movups xmmword [rsp + 0x200], xmm15
movups xmmword [rsp + 0x210], xmm15
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
nop
call fcn.004f3e60
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x98], rcx
lea rax, [rsp + 0x80]
call fcn.004352a0
test eax, eax
jne 0x500f64
lea rax, [0x0069db00]
call fcn.0040d960
lea rcx, [0x005014c0]
mov qword [rax], rcx
cmp dword [0x0092b0b0], 0
jne 0x500e7f
mov rcx, qword [rsp + 0x140]
mov qword [rax + 8], rcx
jmp 0x500e90
lea rdi, [rax + 8]
mov rcx, qword [rsp + 0x140]
call fcn.00465a00
mov rdx, qword [rsp + 0x138]
mov qword [rax + 0x10], rdx
cmp dword [0x0092b0b0], 0
jne 0x500eb3
mov rdx, qword [rsp + 0x120]
mov qword [rax + 0x18], rdx
jmp 0x500ec5
lea rdi, [rax + 0x18]
mov rdx, qword [rsp + 0x120]
nop
call fcn.00465a20
call fcn.00441a00
mov rcx, qword [rsp + 0x258]
mov rcx, qword [rcx + 0x38]
test rcx, rcx
mov eax, 0x11e1a300
cmovg rax, rcx
call fcn.004b3f00
mov qword [rsp + 0x128], rax
movups xmmword [rsp + 0x168], xmm15
lea rcx, [0x00501460]
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x170], rax
lea rcx, [rsp + 0x168]
mov qword [rsp + 0x50], rcx
lea rax, [rsp + 0x38]
call fcn.004352a0
test eax, eax
jne 0x500f2f
jmp 0x501028
call fcn.004358c0
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x160]
mov rdi, qword [rsp + 0x150]
mov rbp, qword [rsp + 0x248]
add rsp, 0x250
ret
call fcn.004358c0
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x160]
mov rdi, qword [rsp + 0x150]
mov rbp, qword [rsp + 0x248]
add rsp, 0x250
ret
call fcn.004358c0
mov rcx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x160]
mov rbp, qword [rsp + 0x248]
add rsp, 0x250
ret
call fcn.00501720
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x150], rdi
call fcn.004358c0
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x160]
mov rbp, qword [rsp + 0x248]
add rsp, 0x250
ret
mov rdx, qword [rsp + 0x128]
mov r9, qword [rdx]
movups xmmword [rsp + 0x220], xmm15
movups xmmword [rsp + 0x228], xmm15
movups xmmword [rsp + 0x238], xmm15
movups xmmword [rsp + 0x188], xmm15
movups xmmword [rsp + 0x198], xmm15
mov qword [rsp + 0x198], r9
mov r9, qword [rsp + 0x118]
mov qword [rsp + 0x188], r9
lea r10, [rsp + 0x220]
mov qword [rsp + 0x190], r10
lea rax, [rsp + 0x188]
lea rbx, [rsp + 0x30]
xor ecx, ecx
xor edi, edi
mov esi, 2
mov r8d, 1
call fcn.004475c0
test rax, rax
jne 0x5011c5
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0x1a8], rdx
movups xmm0, xmmword [rsp + 0x228]
movups xmmword [rsp + 0x1b0], xmm0
movups xmm0, xmmword [rsp + 0x238]
movups xmmword [rsp + 0x1c0], xmm0
cmp qword [rsp + 0x1b8], 0
je 0x5012d5
cmp byte [rsp + 0x1c8], 0
je 0x50112d
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0x1d0], rdx
movups xmm0, xmmword [rsp + 0x228]
movups xmmword [rsp + 0x1d8], xmm0
movups xmm0, xmmword [rsp + 0x238]
movups xmmword [rsp + 0x1e8], xmm0
jmp 0x50115d
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0x1f8], rdx
movups xmm0, xmmword [rsp + 0x228]
movups xmmword [rsp + 0x200], xmm0
movups xmm0, xmmword [rsp + 0x238]
movups xmmword [rsp + 0x210], xmm0
cmp byte [rsp + 0x1f1], 0
je 0x501175
cmp byte [rsp + 0x219], 0
jne 0x501276
cmp byte [rsp + 0x1c8], 0
nop dword [rax]
je 0x501028
mov rax, qword [rsp + 0x128]
cmp qword [rax + 0x20], 0
je 0x50136a
lea rcx, [rax + 8]
mov rax, rcx
call fcn.004626a0
test al, al
je 0x501028
mov rax, qword [rsp + 0x128]
xor ebx, ebx
call fcn.004b3fe0
nop dword [rax]
jmp 0x501028
mov rax, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x268]
call fcn.004f3e60
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x130], rbx
mov rax, rcx
call fcn.004351a0
test eax, eax
jne 0x501335
lea rax, [0x0069dba0]
call fcn.0040d960
lea rcx, [0x00501400]
mov qword [rax], rcx
cmp dword [0x0092b0b0], 0
jne 0x501227
mov rdx, qword [rsp + 0x140]
mov qword [rax + 8], rdx
jmp 0x501238
lea rdi, [rax + 8]
mov rdx, qword [rsp + 0x140]
call fcn.00465a20
mov rbx, qword [rsp + 0x138]
mov qword [rax + 0x10], rbx
cmp dword [0x0092b0b0], 0
jne 0x50125b
mov rbx, qword [rsp + 0x130]
mov qword [rax + 0x18], rbx
jmp 0x50126c
lea rdi, [rax + 0x18]
mov rbx, qword [rsp + 0x130]
call fcn.00465a40
call fcn.00441a00
jmp 0x501028
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1e8]
movups xmmword [rsp + 0x158], xmm15
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rcx
nop
call fcn.004358c0
mov rcx, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x160]
mov rdi, qword [rsp + 0x150]
mov rax, qword [rsp + 0x158]
mov rbp, qword [rsp + 0x248]
add rsp, 0x250
ret
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x1b0]
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], rcx
movups xmmword [rsp + 0x148], xmm15
nop
call fcn.004358c0
mov rcx, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x160]
mov rax, qword [rsp + 0x158]
mov rbp, qword [rsp + 0x248]
add rsp, 0x250
ret
call fcn.004358c0
mov rcx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x160]
mov rbp, qword [rsp + 0x248]
add rsp, 0x250
ret
lea rax, [0x00679500]
lea rbx, [0x007420b0]
call fcn.00436420
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x48], r11
call fcn.00463740
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
nop dword [rax]
jmp fcn.00500bc0