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

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x40
mov rsi, rdx
mov rdi, rcx
lea rdx, str.EMAIL
mov rbx, r8
mov rcx, rsi
mov rbp, r9
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002a68
lea rdx, str.IPV4
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x1400029a0
lea rdx, str.IPV6
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002c28
lea rdx, [0x1400932a8]
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002c38
lea rdx, str.DIGIT
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002b98
lea rdx, [0x1400932bd]
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002cd0
lea rdx, [0x1400932dc]
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002d5a
lea rdx, [0x140093315]
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002c45
lea rdx, [0x140093334]
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002de3
lea rdx, str.UUID1
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002e4b
lea rdx, str.UUID2
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002e5f
lea rdx, str.UUID3
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002e87
lea rdx, str.UUID4
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002e73
lea rdx, str.UUID
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002e73
lea rdx, str.UUID5
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002e9b
lea rdx, str.BYTES
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002eaf
lea rdx, str.SPACE
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x140002ee9
lea rdx, str.USERAGENT
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x140002ebf
movabs rax, 0x5851f42d4c957f2d
imul rax, qword [0x1400c0050]
mov ecx, 0x2d
xor edx, edx
add rax, 1
mov qword [0x1400c0050], rax
div rcx
lea rax, str.x4_t_
mov rbp, qword [rax + rdx*8]
jmp 0x140002a18
mov ecx, 0x10
call sub.msvcrt.dll_malloc
mov rcx, qword [0x1400c0050]
movabs r9, 0x5851f42d4c957f2d
lea r8, str._d._d._d._d
mov rbp, rax
imul rcx, r9
add rcx, 1
mov rdx, rcx
movzx ecx, cl
imul rdx, r9
mov dword [rsp + 0x30], ecx
mov rcx, rbp
add rdx, 1
mov rax, rdx
movzx edx, dl
imul rax, r9
mov dword [rsp + 0x28], edx
mov edx, 0x10
add rax, 1
imul r9, rax
movzx eax, al
mov dword [rsp + 0x20], eax
add r9, 1
mov qword [0x1400c0050], r9
movzx r9d, r9b
call fcn.140001e30
test rbp, rbp
je 0x140002b72
lea rdx, [0x14009346a]
mov rcx, rdi
mov r8, rbp
call fcn.140001e50
lea rdx, str.USERAGENT
mov rcx, rsi
mov ebx, eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x140002b88
movsxd rax, ebx
add rax, rdi
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
movabs r12, 0x5851f42d4c957f2d
mov ecx, 0x100
call sub.msvcrt.dll_malloc
mov rbx, qword [0x1400c0050]
mov rbp, rax
movabs rax, 0xcccccccccccccccd
imul rbx, r12
add rbx, 1
mul rbx
shr rdx, 5
lea rax, [rdx + rdx*4]
mov rdx, rbx
imul rbx, r12
shl rax, 3
sub rdx, rax
lea rax, str.gmail.com
mov r14, qword [rax + rdx*8]
add rbx, 1
mov eax, ebx
mov qword [0x1400c0050], rbx
sar eax, 0x1f
shr eax, 0x1a
lea r13d, [rax + rbx]
and r13d, 0x3f
sub r13d, eax
movsxd r13, r13d
lea rcx, [r13 + 1]
call sub.msvcrt.dll_malloc
mov r9, rax
test rax, rax
je 0x140002b50
test r13, r13
je 0x140002b4b
mov r10, rax
lea r11, [r13 + rax]
lea r8, str.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.__
movabs rcx, 0xfc0fc0fc0fc0fc1
nop dword [rax]
imul rbx, r12
add r10, 1
add rbx, 1
mov rax, rbx
mul rcx
shr rdx, 2
mov rax, rdx
shl rax, 6
add rax, rdx
mov rdx, rbx
sub rdx, rax
movzx eax, byte [r8 + rdx]
mov byte [r10 - 1], al
cmp r11, r10
jne 0x140002b10
mov qword [0x1400c0050], rbx
mov byte [r9 + r13], 0
mov qword [rsp + 0x20], r14
lea r8, str._s__s
mov edx, 0x100
mov rcx, rbp
call fcn.140001e30
test rbp, rbp
jne 0x140002a21
mov rax, rdi
add rsp, 0x40
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov rcx, rbp
call sub.msvcrt.dll_free
jmp 0x140002a4c
lea rcx, [rbx + 1]
call sub.msvcrt.dll_malloc
mov rbp, rax
test rax, rax
je 0x140002b72
test rbx, rbx
je 0x140002c18
mov rcx, qword [0x1400c0050]
mov r8, rax
lea r12, [rbx + rax]
lea r11, [0x1400932b2]
movabs r10, 0x5851f42d4c957f2d
movabs r9, 0xcccccccccccccccd
nop word [rax + rax]
imul rcx, r10
add r8, 1
add rcx, 1
mov rax, rcx
mul r9
shr rdx, 3
lea rax, [rdx + rdx*4]
mov rdx, rcx
add rax, rax
sub rdx, rax
movzx eax, byte [r11 + rdx]
mov byte [r8 - 1], al
cmp r12, r8
jne 0x140002be0
mov qword [0x1400c0050], rcx
mov byte [rbp + rbx], 0
jmp 0x140002a21
call fcn.140002490
mov rbp, rax
jmp 0x140002a18
call fcn.140002320
mov rbp, rax
jmp 0x140002a18
lea rcx, [rbx + 1]
call sub.msvcrt.dll_malloc
mov rbp, rax
test rax, rax
je 0x140002b72
test rbx, rbx
je 0x140002c18
mov rcx, qword [0x1400c0050]
mov r8, rax
lea r12, [rbx + rax]
lea r11, str.ABCDEFGHIJKLMNOPQRSTUVWXYZ
movabs r10, 0x5851f42d4c957f2d
movabs r9, 0x4ec4ec4ec4ec4ec5
nop dword [rax + rax]
imul rcx, r10
add r8, 1
add rcx, 1
mov rax, rcx
mul r9
shr rdx, 3
lea rax, [rdx + rdx*2]
lea rax, [rdx + rax*4]
mov rdx, rcx
add rax, rax
sub rdx, rax
movzx eax, byte [r11 + rdx]
mov byte [r8 - 1], al
cmp r12, r8
jne 0x140002c90
jmp 0x140002c11
lea rcx, [rbx + 1]
call sub.msvcrt.dll_malloc
mov rbp, rax
test rax, rax
je 0x140002b72
test rbx, rbx
je 0x140002c18
mov rcx, qword [0x1400c0050]
mov r8, rax
lea r12, [rbx + rax]
lea r11, str.abcdefghijklmnopqrstuvwxyz
movabs r10, 0x5851f42d4c957f2d
movabs r9, 0x4ec4ec4ec4ec4ec5
nop word [rax + rax]
imul rcx, r10
add r8, 1
add rcx, 1
mov rax, rcx
mul r9
shr rdx, 3
lea rax, [rdx + rdx*2]
lea rax, [rdx + rax*4]
mov rdx, rcx
add rax, rax
sub rdx, rax
movzx eax, byte [r11 + rdx]
mov byte [r8 - 1], al
cmp r12, r8
jne 0x140002d20
jmp 0x140002c11
lea rcx, [rbx + 1]
call sub.msvcrt.dll_malloc
mov rbp, rax
test rax, rax
je 0x140002b72
test rbx, rbx
je 0x140002c18
mov rcx, qword [0x1400c0050]
mov r8, rax
lea r12, [rbx + rax]
lea r11, str.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
movabs r10, 0x5851f42d4c957f2d
movabs r9, 0x4ec4ec4ec4ec4ec5
nop dword [rax]
imul rcx, r10
add r8, 1
add rcx, 1
mov rax, rcx
mul r9
shr rdx, 4
lea rax, [rdx + rdx*2]
lea rax, [rdx + rax*4]
mov rdx, rcx
shl rax, 2
sub rdx, rax
movzx eax, byte [r11 + rdx]
mov byte [r8 - 1], al
cmp r12, r8
jne 0x140002da8
jmp 0x140002c11
lea rcx, [rbx + 1]
call sub.msvcrt.dll_malloc
mov rbp, rax
test rax, rax
je 0x140002b72
test rbx, rbx
je 0x140002c18
mov rax, qword [0x1400c0050]
mov rdx, rbp
lea r10, [rbx + rbp]
lea r9, [0x140093338]
movabs r8, 0x5851f42d4c957f2d
imul rax, r8
add rdx, 1
add rax, 1
mov rcx, rax
and ecx, 0xf
movzx ecx, byte [r9 + rcx]
mov byte [rdx - 1], cl
cmp r10, rdx
jne 0x140002e20
mov qword [0x1400c0050], rax
jmp 0x140002c18
lea rcx, str.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
call fcn.140002570
mov rbp, rax
jmp 0x140002a18
lea rcx, str.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
call fcn.140002570
mov rbp, rax
jmp 0x140002a18
lea rcx, str.xxxxxxxx_xxxx_4xxx_xxxx_xxxxxxxxxxxx
call fcn.140002570
mov rbp, rax
jmp 0x140002a18
lea rcx, str.xxxxxxxx_xxxx_3xxx_xxxx_xxxxxxxxxxxx
call fcn.140002570
mov rbp, rax
jmp 0x140002a18
lea rcx, str.xxxxxxxx_xxxx_5xxx_xxxx_xxxxxxxxxxxx
call fcn.140002570
mov rbp, rax
jmp 0x140002a18
mov rcx, rbx
call fcn.140002610
mov rbp, rax
jmp 0x140002a18
lea rdx, [0x140093443]
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x140002f00
lea rdx, [0x140093448]
mov rcx, rbx
call fcn.140002290
mov rbp, rax
jmp 0x140002a18
lea rdx, str.__r_n_t_v_b_f
mov rcx, rbx
call fcn.140002290
mov rbp, rax
jmp 0x140002a18
mov r8, rbp
lea rdx, str.___s__
mov rcx, rdi
call fcn.140001e50
cdqe
add rax, rdi
jmp 0x140002a52