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

Disassembly:
lea r12, [rsp - 0x88]
cmp r12, qword [r14 + 0x10]
jbe 0x614f9b
sub rsp, 0x108
mov qword [rsp + 0x100], rbp
lea rbp, [rsp + 0x100]
mov qword [rsp + 0x128], rdi
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x118], rbx
cmp byte [rax + 0x40], 0
jne 0x614893
xor edx, edx
jmp 0x614902
mov rbx, qword [rax + 0x60]
lea rcx, [0x006b5e8f]
mov edi, 0xa
lea rax, [0x006a4460]
call fcn.00412800
mov rdx, qword [rax]
cmp qword [rax + 8], 0
je 0x6148c2
mov rsi, qword [rdx + 8]
mov rdx, qword [rdx]
jmp 0x6148c6
xor esi, esi
xor edx, edx
mov rax, rdx
mov rbx, rsi
lea rcx, [0x006b4c20]
mov edi, 5
call fcn.0060cf40
xor eax, 1
mov rcx, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x128]
mov edx, eax
mov rax, qword [rsp + 0x110]
test dl, dl
je 0x6149a0
mov rax, rbx
mov rbx, rcx
lea rcx, [0x006b92f0]
mov edi, 0x13
nop dword [rax]
call fcn.004926e0
test rbx, rbx
jne 0x614ca3
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x614997
cmp qword [rcx + 0x60], 0
je 0x614997
lea rax, [0x006667e0]
call fcn.0040d780
mov qword [rax + 8], 5
lea rcx, [0x006b4c20]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rcx + 0x60]
mov rbx, qword [rdx]
mov edi, 1
mov rsi, rdi
mov r8, rax
lea rax, [0x006b5e8f]
mov r9, rbx
mov ebx, 0xa
mov rcx, r8
call r9
mov rcx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x110]
nop
call fcn.00614740
test al, al
jne 0x614ac8
mov rdx, qword [rsp + 0x110]
mov rsi, qword [rdx + 0x48]
cmp qword [rdx + 0x50], 0
nop
je 0x614abb
mov r8, qword [rsi]
cmp qword [rsi + 8], 7
jne 0x614abb
cmp dword [r8], 0x6e756863
nop dword [rax + rax]
jne 0x614abb
cmp word [r8 + 4], 0x656b
jne 0x614abb
cmp byte [r8 + 6], 0x64
jne 0x614abb
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
lea rcx, [0x006be6e4]
mov edi, 0x1c
call fcn.004926e0
nop
test rbx, rbx
jne 0x614aa5
mov rdx, qword [rsp + 0x128]
test rdx, rdx
je 0x614bf6
cmp qword [rdx + 0x60], 0
nop
je 0x614bf6
lea rax, [0x006667e0]
call fcn.0040d780
mov qword [rax + 8], 7
lea rcx, [0x006b5326]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rcx + 0x60]
mov rbx, qword [rdx]
mov edi, 1
mov rsi, rdi
mov r8, rax
lea rax, [0x006b8740]
mov r9, rbx
mov ebx, 0x11
mov rcx, r8
call r9
mov rdx, qword [rsp + 0x128]
nop dword [rax + rax]
jmp 0x614bf6
mov rax, rbx
mov rbx, rcx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rdx, qword [rsp + 0x128]
jmp 0x614bf6
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
lea rcx, [0x006b7f8f]
mov edi, 0x10
call fcn.004926e0
test rbx, rbx
jne 0x614c8d
mov rcx, qword [rsp + 0x110]
mov rax, qword [rcx + 0x38]
mov ebx, 0xa
call fcn.004ad000
mov rcx, rbx
lea rdi, [0x006b45b1]
mov esi, 2
mov rbx, rax
xor eax, eax
nop dword [rax]
call fcn.0044f260
mov rcx, rax
mov rdi, rbx
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
nop dword [rax + rax]
call fcn.004926e0
test rbx, rbx
jne 0x614c77
mov rdx, qword [rsp + 0x128]
test rdx, rdx
je 0x614bf6
cmp qword [rdx + 0x60], 0
je 0x614bf6
mov rcx, qword [rsp + 0x110]
mov rax, qword [rcx + 0x38]
mov ebx, 0xa
nop dword [rax + rax]
call fcn.004ad000
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x58], rbx
lea rax, [0x006667e0]
call fcn.0040d780
mov rcx, qword [rsp + 0x58]
mov qword [rax + 8], rcx
cmp dword [0x00913f20], 0
jne 0x614bb7
mov r8, qword [rsp + 0x78]
mov qword [rax], r8
jmp 0x614bc5
mov rdi, rax
mov r8, qword [rsp + 0x78]
nop
call fcn.00464d60
mov r8, qword [rsp + 0x128]
mov rdx, qword [r8 + 0x60]
mov r9, qword [rdx]
mov ebx, 0xe
mov rcx, rax
mov edi, 1
mov rsi, rdi
lea rax, [0x006b74df]
call r9
mov rdx, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x110]
mov rdi, qword [rsi + 0x68]
test rdi, rdi
je 0x614cb9
mov rcx, qword [rdi]
mov qword [rsp + 0x48], rcx
lea rax, [0x006654e0]
xor ebx, ebx
nop dword [rax]
call fcn.0044b520
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x110]
mov rbx, qword [rdx + 0x68]
lea rdi, [rsp + 0xa0]
lea rdi, [rdi - 0x20]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046534b
mov rbp, qword [rbp]
lea rcx, [rsp + 0xa0]
lea rax, [0x006a4460]
call fcn.0040f760
xor eax, eax
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x70]
jmp 0x614ce9
mov rax, rbx
mov rbx, rcx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rax, rbx
mov rbx, rcx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov rax, rbx
mov rbx, rcx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
lea rax, [rsp + 0xa0]
call fcn.0040f9e0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x60], rdx
mov rsi, qword [rsp + 0xa0]
test rsi, rsi
je 0x614eb5
mov rax, qword [rsi]
mov rbx, qword [rsi + 8]
nop
call fcn.005cf420
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x50], rbx
cmp rbx, 7
jne 0x614d45
cmp dword [rax], 0x69617254
jne 0x614d99
cmp word [rax + 4], 0x656c
jne 0x614d99
cmp byte [rax + 6], 0x72
jne 0x614d99
nop dword [rax]
jmp 0x614e1e
cmp rbx, 0xe
jne 0x614d70
movabs rdx, 0x2d746e65746e6f43
cmp qword [rax], rdx
jne 0x614d99
cmp dword [rax + 8], 0x676e654c
jne 0x614d99
cmp word [rax + 0xc], 0x6874
jne 0x614d99
jmp 0x614e1e
cmp rbx, 0x11
jne 0x614d99
lea rbx, [0x006b8740]
mov ecx, 0x11
call fcn.00402da0
test al, al
jne 0x614e1e
mov rax, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x40]
lea rdx, [rsi + 1]
mov rdi, qword [rsp + 0x48]
cmp rdi, rdx
jb 0x614db3
mov rcx, qword [rsp + 0x60]
jmp 0x614de3
lea rax, [0x006654e0]
mov rbx, qword [rsp + 0x60]
mov rcx, rsi
mov rsi, rdx
call fcn.0044b680
lea rdx, [rbx + 1]
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x40]
mov rdi, rcx
mov rcx, rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rdi
shl rsi, 4
mov qword [rcx + rsi + 8], rbx
lea rbx, [rcx + rsi]
cmp dword [0x00913f20], 0
jne 0x614e11
mov qword [rcx + rsi], rax
jmp 0x614ccd
mov rdi, rbx
call fcn.00464be0
jmp 0x614ccd
movups xmmword [rsp + 0x80], xmm15
movups xmmword [rsp + 0x90], xmm15
lea rax, [0x006b97c3]
mov ebx, 0x13
nop dword [rax]
call fcn.0040aec0
lea rcx, [0x006654e0]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x50]
call fcn.0040aec0
lea rcx, [0x006654e0]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
lea rax, [0x006b4aa4]
mov ebx, 5
lea rcx, [rsp + 0x80]
mov edi, 2
mov rsi, rdi
nop
call fcn.004ea880
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
test rax, rax
je 0x614cb9
nop
mov rbx, rax
mov rax, rdx
call fcn.0040af60
mov rbx, rax
lea rax, [0x0073d130]
call fcn.0046c000
mov rax, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
lea rdi, [0x006b4422]
mov esi, 1
call fcn.004d9400
mov ecx, 9
mov rdi, rax
mov rsi, rbx
lea r8, [0x006b45b1]
mov r9d, 2
xor eax, eax
lea rbx, [0x006b5b04]
call fcn.0044f300
mov rcx, rax
mov rdi, rbx
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
call fcn.004926e0
test rbx, rbx
jne 0x614f85
mov r8, qword [rsp + 0x128]
test r8, r8
je 0x614cb9
mov rdx, qword [r8 + 0x60]
test rdx, rdx
je 0x614cb9
mov r8, qword [rdx]
lea rax, [0x006b528c]
mov ebx, 7
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
call r8
nop
jmp 0x614cb9
mov rax, rbx
mov rbx, rcx
mov rbp, qword [rsp + 0x100]
add rsp, 0x108
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.004629a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.00614840