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

Disassembly:
lea r12, [rsp - 0x1d0]
cmp r12, qword [r14 + 0x10]
jbe 0x64536b
push rbp
mov rbp, rsp
sub rsp, 0x248
mov rax, qword [0x008f6358]
call sym.math_rand.Intn
mov rcx, qword [0x008f6358]
cmp rax, rcx
jae 0x645365
shl rax, 4
mov rcx, qword [0x008f6350]
mov rdx, qword [rcx + rax + 8]
mov rcx, qword [rcx + rax]
cmp rdx, 9
jne 0x644dc5
movabs rbx, 0x736f746e6963614d
nop dword [rax]
cmp qword [rcx], rbx
jne 0x644dc5
cmp byte [rcx + 8], 0x68
jne 0x644dc5
mov rax, qword [0x008f6378]
dec rax
call sym.math_rand.Intn
mov rcx, qword [0x008f6378]
cmp rax, rcx
jae 0x645360
shl rax, 4
mov rcx, qword [0x008f6370]
mov rdx, qword [rcx + rax]
mov rcx, qword [rcx + rax + 8]
nop
jmp 0x644e78
cmp rdx, 7
jne 0x644e20
cmp dword [rcx], 0x646e6957
jne 0x644e20
cmp word [rcx + 4], 0x776f
jne 0x644e20
cmp byte [rcx + 6], 0x73
nop
jne 0x644e20
mov rax, qword [0x008f6398]
dec rax
call sym.math_rand.Intn
mov rcx, qword [0x008f6398]
nop dword [rax + rax]
cmp rax, rcx
jae 0x64535a
shl rax, 4
mov rcx, qword [0x008f6390]
mov rdx, qword [rcx + rax]
mov rcx, qword [rcx + rax + 8]
jmp 0x644e78
cmp rdx, 3
jne 0x644e74
cmp word [rcx], 0x3158
jne 0x644e6e
cmp byte [rcx + 2], 0x31
je 0x644e39
xor ecx, ecx
xor edx, edx
jmp 0x644e78
mov rax, qword [0x008f63b8]
dec rax
call sym.math_rand.Intn
mov rcx, qword [0x008f63b8]
cmp rax, rcx
jae 0x645355
shl rax, 4
mov rcx, qword [0x008f63b0]
mov rdx, qword [rcx + rax]
mov rcx, qword [rcx + rax + 8]
jmp 0x644e78
xor ecx, ecx
xor edx, edx
jmp 0x644e78
xor ecx, ecx
xor edx, edx
mov qword [rsp + 0x128], rdx
mov qword [rsp + 0xf8], rcx
mov rax, qword [0x008f63d8]
dec rax
call sym.math_rand.Intn
mov rcx, qword [0x008f63d8]
nop
cmp rax, rcx
jae 0x645350
shl rax, 4
mov rcx, qword [0x008f63d0]
mov rdx, qword [rcx + rax + 8]
mov rcx, qword [rcx + rax]
nop dword [rax]
cmp rdx, 6
jne 0x6450e0
cmp dword [rcx], 0x6f726863
jne 0x6450e0
cmp word [rcx + 4], 0x656d
nop dword [rax]
jne 0x6450e0
mov eax, 0x63
call sym.math_rand.Intn
add rax, 0x1f4
mov ebx, 0xa
nop dword [rax + rax]
call sym.strconv.FormatInt
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xe8], rbx
mov eax, 0x63
call sym.math_rand.Intn
mov ebx, 0xa
call sym.strconv.FormatInt
mov qword [rsp + 0x110], rax
mov qword [rsp + 0xe0], rbx
mov eax, 0x270f
nop
call sym.math_rand.Intn
mov ebx, 0xa
call sym.strconv.FormatInt
mov qword [rsp + 0x108], rax
mov qword [rsp + 0xd8], rbx
mov eax, 0x3e7
call sym.math_rand.Intn
mov ebx, 0xa
call sym.strconv.FormatInt
mov qword [rsp], rax
mov qword [rsp + 8], rbx
lea rax, [rsp + 0xb8]
mov rbx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0xe0]
lea rdi, [0x006d0b8e]
mov esi, 2
mov r8, qword [rsp + 0x108]
mov r9, qword [rsp + 0xd8]
lea r10, [0x00754f08]
mov r11d, 1
nop dword [rax]
call sym.runtime.concatstring5
lea rdi, [rsp + 0x1c8]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046c822
mov rbp, qword [rbp]
mov qword [rsp + 0x1d0], 0xd
lea rcx, [0x006d31aa]
mov qword [rsp + 0x1c8], rcx
mov rcx, qword [rsp + 0xf8]
mov qword [rsp + 0x1e0], rcx
mov rcx, qword [rsp + 0x128]
mov qword [rsp + 0x1d8], rcx
mov qword [rsp + 0x1f0], 0xe
lea rcx, [0x006d377d]
mov qword [rsp + 0x1e8], rcx
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0x200], rcx
mov rdx, qword [rsp + 0x118]
mov qword [rsp + 0x1f8], rdx
mov qword [rsp + 0x210], 0x1e
lea rsi, [0x006dc17b]
mov qword [rsp + 0x208], rsi
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x230], 8
lea rbx, [0x006d1875]
mov qword [rsp + 0x228], rbx
mov qword [rsp + 0x240], rcx
mov qword [rsp + 0x238], rdx
xor eax, eax
lea rbx, [rsp + 0x1c8]
mov ecx, 8
mov rdi, rcx
call sym.runtime.concatstrings
add rsp, 0x248
pop rbp
ret
cmp rdx, 2
jne 0x64530e
cmp word [rcx], 0x6569
jne 0x64530e
mov eax, 0x63
call sym.math_rand.Intn
mov ebx, 0xa
call sym.strconv.FormatInt
mov rcx, rbx
lea rdi, [0x006d0b8e]
mov esi, 2
mov rbx, rax
lea rax, [rsp + 0x98]
call sym.runtime.concatstring2
mov qword [rsp + 0x120], rax
mov qword [rsp + 0xf0], rbx
mov eax, 0x63
nop dword [rax]
call sym.math_rand.Intn
mov ebx, 0xa
call sym.strconv.FormatInt
mov rcx, rbx
lea rdi, [0x006d0b8e]
mov esi, 2
mov rbx, rax
lea rax, [rsp + 0x78]
call sym.runtime.concatstring2
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x100], rbx
mov eax, 1
call sym.math_rand.Intn
cmp rax, 1
je 0x645191
xor ebx, ebx
xor eax, eax
jmp 0x6451df
mov rax, qword [0x008f63f8]
dec rax
nop dword [rax + rax]
call sym.math_rand.Intn
mov rcx, qword [0x008f63f8]
cmp rax, rcx
jae 0x64534b
shl rax, 4
mov rdx, qword [0x008f63f0]
mov rbx, qword [rdx + rax]
mov rcx, qword [rdx + rax + 8]
lea rax, [rsp + 0x58]
lea rdi, [0x006d0b90]
mov esi, 2
call sym.runtime.concatstring2
lea rdi, [rsp + 0x138]
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046c819
mov rbp, qword [rbp]
mov qword [rsp + 0x140], 0x1e
lea rdx, [0x006dc199]
mov qword [rsp + 0x138], rdx
mov rdx, qword [rsp + 0xf0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x120]
mov qword [rsp + 0x148], rdx
mov qword [rsp + 0x160], 2
lea rdx, [0x006d0b90]
mov qword [rsp + 0x158], rdx
mov rsi, qword [rsp + 0xf8]
mov qword [rsp + 0x170], rsi
mov rsi, qword [rsp + 0x128]
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x180], 2
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x190], rbx
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x1a0], 8
lea rdx, [0x006d187d]
mov qword [rsp + 0x198], rdx
mov rdx, qword [rsp + 0x100]
mov qword [rsp + 0x1b0], rdx
mov rdx, qword [rsp + 0x130]
mov qword [rsp + 0x1a8], rdx
mov qword [rsp + 0x1c0], 1
lea rdx, [0x00754f10]
mov qword [rsp + 0x1b8], rdx
xor eax, eax
lea rbx, [rsp + 0x138]
mov ecx, 9
mov rdi, rcx
call sym.runtime.concatstrings
add rsp, 0x248
pop rbp
ret
mov rax, qword [0x008f6418]
call sym.math_rand.Intn
mov rcx, qword [0x008f6418]
cmp rax, rcx
jae 0x645346
shl rax, 4
mov rcx, qword [0x008f6410]
mov rdx, qword [rcx + rax]
mov rbx, qword [rcx + rax + 8]
mov rax, rdx
add rsp, 0x248
pop rbp
ret
call sym.runtime.panicIndex
call sym.runtime.panicIndex
call sym.runtime.panicIndex
call sym.runtime.panicIndex
call sym.runtime.panicIndex
nop
call sym.runtime.panicIndex
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt.abi0
jmp sym.main.getuseragent