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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4d7638
push rbp
mov rbp, rsp
sub rsp, 0x78
mov qword [rsp + 0x90], rbx
mov r12, qword [0x008cc3a0]
test r12, r12
jne 0x4d7624
cmp rcx, 4
jg 0x4d7294
cmp rcx, 2
jne 0x4d718b
cmp word [rbx], 0x7069
nop
je 0x4d7309
jmp 0x4d75b4
cmp rcx, 3
jne 0x4d720b
cmp byte [rbx], 0x69
jg 0x4d71db
cmp word [rbx], 0x6964
jne 0x4d71a7
cmp byte [rbx + 2], 0x72
je 0x4d722e
movzx r12d, word [rbx]
cmp r12w, 0x7069
jne 0x4d71c6
cmp byte [rbx + 2], 0x34
je 0x4d7309
nop dword [rax]
cmp r12w, 0x7069
jne 0x4d75b4
cmp byte [rbx + 2], 0x36
je 0x4d7309
jmp 0x4d75b4
cmp word [rbx], 0x6374
jne 0x4d71ec
cmp byte [rbx + 2], 0x70
je 0x4d7309
cmp word [rbx], 0x6475
jne 0x4d75b4
cmp byte [rbx + 2], 0x70
nop dword [rax + rax]
je 0x4d7309
jmp 0x4d75b4
cmp rcx, 4
jne 0x4d75b4
movzx r12d, byte [rbx]
cmp r12b, 0x74
jg 0x4d726f
nop
cmp r12b, 0x70
jg 0x4d7252
cmp dword [rbx], 0x656c6966
jne 0x4d723a
mov byte [rax + 0x220], 1
jmp 0x4d7310
cmp dword [rbx], 0x65706970
jne 0x4d75b4
mov byte [rax + 0x220], 3
jmp 0x4d7310
cmp dword [rbx], 0x34706374
je 0x4d7309
cmp dword [rbx], 0x36706374
je 0x4d7309
jmp 0x4d75b4
cmp dword [rbx], 0x34706475
je 0x4d7309
cmp dword [rbx], 0x36706475
je 0x4d7309
cmp dword [rbx], 0x78696e75
je 0x4d7309
jmp 0x4d75b4
cmp rcx, 7
jne 0x4d72c5
cmp dword [rbx], 0x736e6f63
jne 0x4d75b4
cmp word [rbx + 4], 0x6c6f
jne 0x4d75b4
cmp byte [rbx + 6], 0x65
jne 0x4d75b4
mov byte [rax + 0x220], 2
jmp 0x4d7310
cmp rcx, 8
jne 0x4d72e0
movabs r12, 0x6d61726778696e75
cmp qword [rbx], r12
je 0x4d7309
jmp 0x4d75b4
cmp rcx, 0xa
jne 0x4d75b4
movabs r12, 0x6b63617078696e75
cmp qword [rbx], r12
jne 0x4d75b4
cmp word [rbx + 8], 0x7465
jne 0x4d75b4
mov byte [rax + 0x220], 0
mov byte [rsp + 0xa0], dil
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x88], rax
cmp byte [rax + 0x220], 0
setne byte [rax + 0x21f]
nop
test dil, dil
jne 0x4d734b
xor edx, edx
xor esi, esi
jmp 0x4d7383
lea rcx, [rax + 0x1b8]
mov rbx, rax
mov rax, rcx
call fcn.004d6540
mov rcx, qword [rsp + 0x98]
movzx edi, byte [rsp + 0xa0]
mov rdx, rax
mov rsi, rbx
mov rax, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x90]
mov r12, qword [0x008cbfc0]
test r12, r12
je 0x4d73e0
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x70], rsi
mov r8, qword [r12]
mov rdi, rdx
mov rdx, r12
mov r9, rax
mov rax, rbx
mov rbx, rcx
mov rcx, r9
call r8
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x70]
movzx edi, byte [rsp + 0xa0]
nop dword [rax]
test rdx, rdx
jne 0x4d75a4
test dil, dil
je 0x4d74ab
cmp byte [0x009210ca], 0
je 0x4d74ab
nop
cmp rcx, 3
jne 0x4d7424
cmp word [rbx], 0x6374
jne 0x4d7413
cmp byte [rbx + 2], 0x70
je 0x4d7452
cmp word [rbx], 0x6475
jne 0x4d7459
cmp byte [rbx + 2], 0x70
nop
je 0x4d7452
jmp 0x4d7459
cmp rcx, 4
jne 0x4d7459
cmp byte [rbx], 0x74
jg 0x4d7442
cmp dword [rbx], 0x34706374
je 0x4d7452
cmp dword [rbx], 0x36706374
je 0x4d7452
nop
jmp 0x4d7459
cmp dword [rbx], 0x34706475
je 0x4d7452
cmp dword [rbx], 0x36706475
jne 0x4d7459
mov edx, 3
jmp 0x4d745e
mov edx, 2
mov byte [rsp + 0x4f], dl
mov rcx, qword [rax + 0x10]
mov ebx, edx
mov rax, rcx
call fcn.004bffa0
test rax, rax
jne 0x4d7490
movzx edx, byte [rsp + 0x4f]
test dl, 1
je 0x4d7490
mov rdx, qword [rsp + 0x88]
mov byte [rdx + 0x21c], 1
jmp 0x4d7498
mov rdx, qword [rsp + 0x88]
mov rax, rdx
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x90]
cmp rcx, 3
jne 0x4d74c4
cmp word [rbx], 0x6475
jne 0x4d753c
cmp byte [rbx + 2], 0x70
je 0x4d74da
jmp 0x4d753c
cmp rcx, 4
jne 0x4d753c
cmp dword [rbx], 0x34706475
je 0x4d74da
cmp dword [rbx], 0x36706475
jne 0x4d753c
mov dword [rsp + 0x50], 0
mov dword [rsp + 0x54], 0
mov rdx, qword [rax + 0x10]
mov ebx, 0x9800000c
lea rcx, [rsp + 0x54]
mov edi, 4
xor esi, esi
xor r8d, r8d
lea r9, [rsp + 0x50]
xor r10d, r10d
xor r11d, r11d
mov rax, rdx
call fcn.004c0880
test rax, rax
jne 0x4d7524
mov rax, qword [rsp + 0x88]
jmp 0x4d753c
mov rcx, rax
mov rdi, rbx
lea rax, [0x006b1641]
mov ebx, 8
add rsp, 0x78
pop rbp
ret
mov dword [rax + 0x40], 0x72
mov dword [rax + 0x110], 0x77
cmp dword [0x00921500], 0
je 0x4d7571
call fcn.004665e0
mov qword [r11], rax
mov rdx, qword [rax + 0x50]
mov qword [r11 + 8], rdx
mov rdx, qword [rax + 0x120]
mov qword [r11 + 0x10], rdx
mov qword [rax + 0x50], rax
mov qword [rax + 0x120], rax
mov rdx, qword [rax + 0x1b8]
mov qword [rax + 0x38], rdx
mov rdx, qword [rax + 0x1b8]
mov qword [rax + 0x108], rdx
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rdi, rax
add rsp, 0x78
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rdx
mov rdi, rsi
add rsp, 0x78
pop rbp
ret
xor eax, eax
mov rdi, rbx
mov rsi, rcx
lea rbx, [0x006bdb44]
mov ecx, 0x25
call fcn.0044f620
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x68], rax
lea rax, [0x00673e00]
nop
call fcn.0040d680
mov rdx, qword [rsp + 0x58]
mov qword [rax + 8], rdx
cmp dword [0x00921500], 0
jne 0x4d7600
mov rdx, qword [rsp + 0x68]
jmp 0x4d760d
call fcn.004665a0
mov rdx, qword [rsp + 0x68]
mov qword [r11], rdx
mov qword [rax], rdx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x78
pop rbp
ret
mov rdi, qword [0x008cc3a8]
xor eax, eax
xor ebx, ebx
mov rcx, r12
add rsp, 0x78
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov byte [rsp + 0x20], dil
call fcn.004646a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movzx edi, byte [rsp + 0x20]
jmp fcn.004d7140