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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x59772d
sub rsp, 0x38
mov qword [rsp + 0x30], rbp
lea rbp, [rsp + 0x30]
movzx eax, byte [0x00850a1c]
cmp al, 1
jbe 0x596bcd
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
jne 0x596bd6
call fcn.00429df0
ud2
mov byte [0x00850a1c], 1
call fcn.00474990
call fcn.004e2600
call fcn.004dfda0
call fcn.004e6700
call fcn.004e6e90
call fcn.004e7200
call fcn.004e88f0
call fcn.004ec550
call fcn.00561860
call fcn.004e6800
call fcn.00564860
call fcn.004e79b0
call fcn.00506450
call fcn.00525410
call fcn.004bf4a0
call fcn.0045f790
call fcn.00505970
call fcn.005476a0
call fcn.004c7d30
call fcn.0045de10
call fcn.004a7ec0
call fcn.00469820
call fcn.0052a910
call fcn.00507fd0
call fcn.00515060
call fcn.00520e50
call fcn.004f0710
call fcn.004eff40
call fcn.005731d0
lea rax, [0x0065c120]
mov qword [rsp], rax
mov qword [rsp + 8], 0x18
mov qword [rsp + 0x10], 0
call fcn.00407180
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x27], 0
lea rcx, [0x0065c120]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0xc
mov eax, dword [0x00850df0]
test eax, eax
jne 0x59771c
lea rax, [0x006acf0e]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0xa
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x12
mov eax, dword [0x00850df0]
test eax, eax
jne 0x59770b
lea rax, [0x006aeff4]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x14
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0xe
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5976fa
lea rax, [0x006ad7c9]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x15
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x11
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5976e9
lea rax, [0x006ae6cf]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x16
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0xf
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5976d8
lea rax, [0x006addd6]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x1e
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x15
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5976c7
lea rax, [0x006b01a5]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x28
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x11
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5976b6
lea rax, [0x006ae735]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x2a
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0xf
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5976a5
lea rax, [0x006adce6]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x2b
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x17
mov eax, dword [0x00850df0]
test eax, eax
jne 0x597694
lea rax, [0x006b122e]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x2c
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x13
mov eax, dword [0x00850df0]
test eax, eax
jne 0x597683
lea rax, [0x006af6d8]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x2d
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x13
mov eax, dword [0x00850df0]
test eax, eax
jne 0x597672
lea rax, [0x006af49e]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x2e
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x13
mov eax, dword [0x00850df0]
test eax, eax
jne 0x597661
lea rax, [0x006af7a9]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x2f
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x11
mov eax, dword [0x00850df0]
test eax, eax
jne 0x597650
lea rax, [0x006ae757]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x30
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x1d
mov eax, dword [0x00850df0]
test eax, eax
jne 0x59763f
lea rax, [0x006b3836]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x31
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0xd
mov eax, dword [0x00850df0]
test eax, eax
jne 0x59762e
lea rax, [0x006ad34b]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x32
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x16
mov eax, dword [0x00850df0]
test eax, eax
jne 0x59761d
lea rax, [0x006b071e]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x33
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x18
mov eax, dword [0x00850df0]
test eax, eax
jne 0x59760c
lea rax, [0x006b1543]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x46
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x1e
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5975fb
lea rax, [0x006b3c87]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x47
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x1b
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5975ea
lea rax, [0x006b2808]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x50
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0xe
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5975d9
lea rax, [0x006ad871]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x56
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x16
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5975c8
lea rax, [0x006b07fa]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x5a
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0xd
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5975b7
lea rax, [0x006ad512]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x64
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x27]
mov qword [rsp + 0x10], rdx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x10
mov eax, dword [0x00850df0]
test eax, eax
jne 0x5975a6
lea rax, [0x006ae32b]
mov qword [rdi], rax
mov byte [rsp + 0x27], 0x78
lea rax, [0x0065c120]
mov qword [rsp], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 8], rax
lea rcx, [rsp + 0x27]
mov qword [rsp + 0x10], rcx
call fcn.00407a10
mov rdi, qword [rsp + 0x18]
mov qword [rdi + 8], 0x17
mov eax, dword [0x00850df0]
test eax, eax
jne 0x597584
lea rax, [0x006b0fef]
mov qword [rdi], rax
mov rax, qword [rsp + 0x28]
mov qword [0x008337d8], rax
lea rax, [0x006b37c2]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1d
call fcn.0045e8c0
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
mov qword [0x008342d0], rcx
mov ecx, dword [0x00850df0]
test ecx, ecx
jne 0x597573
mov qword [0x008342d8], rax
lea rax, [0x006b1e86]
mov qword [rsp], rax
mov qword [rsp + 8], 0x19
call fcn.0045e8c0
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
mov qword [0x00834300], rcx
mov ecx, dword [0x00850df0]
test ecx, ecx
jne 0x597562
mov qword [0x00834308], rax
lea rax, [0x006b89d2]
mov qword [rsp], rax
mov qword [rsp + 8], 0x30
call fcn.0045e8c0
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
mov qword [0x008342e0], rcx
mov ecx, dword [0x00850df0]
test ecx, ecx
jne 0x597551
mov qword [0x008342e8], rax
lea rax, [0x006b64aa]
mov qword [rsp], rax
mov qword [rsp + 8], 0x26
call fcn.0045e8c0
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
mov qword [0x008342c0], rcx
mov ecx, dword [0x00850df0]
test ecx, ecx
jne 0x597543
mov qword [0x008342c8], rax
lea rax, [0x006b64d0]
mov qword [rsp], rax
mov qword [rsp + 8], 0x26
call fcn.0045e8c0
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x10]
mov qword [0x008342f0], rcx
mov ecx, dword [0x00850df0]
test ecx, ecx
jne 0x597535
mov qword [0x008342f8], rax
mov byte [0x00850a1c], 2
mov rbp, qword [rsp + 0x30]
add rsp, 0x38
ret
lea rdi, [0x008342f8]
call fcn.004553b0
jmp 0x597524
lea rdi, [0x008342c8]
call fcn.004553b0
jmp 0x5974e9
lea rdi, [0x008342e8]
call fcn.004553b0
jmp 0x5974ae
lea rdi, [0x00834308]
call fcn.004553b0
jmp 0x59746f
lea rdi, [0x008342d8]
call fcn.004553b0
jmp 0x597430
lea rax, [0x006b0fef]
call fcn.004553b0
lea rdi, [0x008337d8]
mov rax, qword [rsp + 0x28]
call fcn.004553b0
jmp 0x5973f1
lea rax, [0x006ae32b]
call fcn.004553b0
jmp 0x597397
lea rax, [0x006ad512]
call fcn.004553b0
jmp 0x597349
lea rax, [0x006b07fa]
call fcn.004553b0
jmp 0x5972fb
lea rax, [0x006ad871]
call fcn.004553b0
jmp 0x5972ad
lea rax, [0x006b2808]
call fcn.004553b0
jmp 0x59725f
lea rax, [0x006b3c87]
call fcn.004553b0
jmp 0x597211
lea rax, [0x006b1543]
call fcn.004553b0
jmp 0x5971c3
lea rax, [0x006b071e]
call fcn.004553b0
jmp 0x597175
lea rax, [0x006ad34b]
call fcn.004553b0
jmp 0x597127
lea rax, [0x006b3836]
call fcn.004553b0
jmp 0x5970d9
lea rax, [0x006ae757]
call fcn.004553b0
jmp 0x59708b
lea rax, [0x006af7a9]
call fcn.004553b0
jmp 0x59703d
lea rax, [0x006af49e]
call fcn.004553b0
jmp 0x596fef
lea rax, [0x006af6d8]
call fcn.004553b0
jmp 0x596fa1
lea rax, [0x006b122e]
call fcn.004553b0
jmp 0x596f53
lea rax, [0x006adce6]
call fcn.004553b0
jmp 0x596f05
lea rax, [0x006ae735]
call fcn.004553b0
jmp 0x596eb7
lea rax, [0x006b01a5]
call fcn.004553b0
jmp 0x596e69
lea rax, [0x006addd6]
call fcn.004553b0
jmp 0x596e1b
lea rax, [0x006ae6cf]
call fcn.004553b0
jmp 0x596dcd
lea rax, [0x006ad7c9]
call fcn.004553b0
jmp 0x596d7f
lea rax, [0x006aeff4]
call fcn.004553b0
jmp 0x596d31
lea rax, [0x006acf0e]
call fcn.004553b0
jmp 0x596ce3
call fcn.00452950
jmp fcn.00596b90