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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x4128d3
sub rsp, 0x68
mov qword [rsp + 0x60], rbp
lea rbp, [rsp + 0x60]
mov rcx, qword [rsp + 0x98]
test rcx, 0x1f
jne 0x4128b8
mov rdx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
cmp rdx, rax
je 0x4127db
test rdx, rdx
je 0x4127d4
mov rbx, rdx
xor edx, edx
div rbx
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 0
mov rdx, rbx
shr rbx, 3
mov rsi, qword [rsp + 0x80]
mov rdi, rsi
shr rsi, 3
mov r8, rbx
sub rbx, rsi
test rbx, rbx
jbe 0x4127cd
mov word [rsp + 0x38], 1
cmp rbx, 1
jbe 0x4127c1
mov byte [rsp + 0x3a], 0x81
dec rbx
mov rsi, 3
cmp rbx, 0x80
jb 0x41262d
cmp rsi, 0x28
jae 0x4127ba
mov r9, rbx
or rbx, 0x80
mov byte [rsp + rsi + 0x38], bl
shr r9, 7
inc rsi
mov rbx, r9
cmp rbx, 0x80
jae 0x412602
cmp rsi, 0x28
jae 0x4127b3
mov byte [rsp + rsi + 0x38], bl
lea rbx, [rsi + 1]
cmp rbx, 0x28
jae 0x4127ac
mov byte [rsp + rbx + 0x38], pe_nt_image_headers64
inc rbx
cmp r8, 0x80
jb 0x412686
cmp rbx, 0x28
jae 0x4127a5
mov rsi, r8
or r8, 0x80
mov byte [rsp + rbx + 0x38], r8b
shr rsi, 7
inc rbx
mov r8, rsi
cmp r8, 0x80
jae 0x41265a
cmp rbx, 0x28
jae 0x41279e
mov byte [rsp + rbx + 0x38], r8b
inc rbx
dec rax
mov qword [rsp + 0x30], rax
mov rsi, rax
cmp rax, 0x80
jb 0x4126d4
cmp rbx, 0x28
jae 0x412797
mov r8, rax
or rax, 0x80
mov byte [rsp + rbx + 0x38], al
shr r8, 7
inc rbx
mov rax, r8
cmp rax, 0x80
jae 0x4126ab
cmp rbx, 0x28
jae 0x412790
mov byte [rsp + rbx + 0x38], al
lea rax, [rbx + 1]
cmp rax, 0x28
jae 0x412789
mov byte [rsp + rbx + 0x39], 0
lea rax, [rsp + 0x38]
mov qword [rsp + 8], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 2
call fcn.00412a20
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x30]
imul rax, rcx
mov rcx, qword [rsp + 0x80]
add rax, rcx
shr rax, 3
mov rcx, qword [rsp + 0x70]
add rax, 3
shr rax, 2
mov rdx, rcx
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x98]
shr rcx, 5
sub rdx, rcx
mov rcx, rdx
inc rdx
mov qword [rsp], rdx
sub rax, rcx
mov qword [rsp + 8], rax
call fcn.004551f0
mov rbp, qword [rsp + 0x60]
add rsp, 0x68
ret
call fcn.004293e0
ud2
call fcn.004293e0
ud2
call fcn.004293e0
ud2
call fcn.004293e0
ud2
call fcn.004293e0
ud2
call fcn.004293e0
ud2
call fcn.004293e0
ud2
call fcn.004293e0
ud2
mov rbx, 2
jmp 0x41263f
xor ebx, ebx
jmp 0x41263f
call fcn.004294c0
ud2
mov rax, qword [rsp + 0xa0]
mov qword [rsp], rax
mov qword [rsp + 8], 0
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 2
call fcn.00412a20
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x28], rax
mov rcx, rax
shl rax, 3
mov rdx, qword [rsp + 0x80]
cmp rdx, rax
jne 0x41282e
mov rax, rcx
jmp 0x412743
call fcn.0042b850
lea rax, [0x006db6b8]
mov qword [rsp], rax
mov qword [rsp + 8], 0x2a
call fcn.0042c220
call fcn.0042bad0
mov rax, qword [rsp + 0x28]
mov qword [rsp], rax
call fcn.0042c020
call fcn.0042bad0
lea rax, [0x006d17e7]
mov qword [rsp], rax
mov qword [rsp + 8], 0xc
call fcn.0042c220
call fcn.0042bad0
mov rax, qword [rsp + 0x80]
mov qword [rsp], rax
call fcn.0042c020
call fcn.0042bb30
call fcn.0042b8f0
lea rax, [0x006db90c]
mov qword [rsp], rax
mov qword [rsp + 8], 0x2b
call fcn.0042aea0
ud2
lea rax, [0x006da94c]
mov qword [rsp], rax
mov qword [rsp + 8], 0x27
call fcn.0042aea0
ud2
call fcn.00452210
jmp fcn.00412520