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

Disassembly:
cmp rsp, qword [r14 + 0x18]
jbe 0x43c346
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x38], r14
mov rcx, qword [r14 + 0x30]
nop
inc dword [rcx + 0xd8]
mov rcx, qword [r14 + 0x30]
mov rcx, qword [rcx + 0xa0]
nop
mov rdx, qword [rsp + 0x38]
mov rdx, qword [rdx + 0x30]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x50], rcx
nop
lea rax, [0x008c5058]
call fcn.0040b860
cmp dword [0x008c5150], 0
jne 0x43c32f
mov eax, dword [0x00918648]
dec eax
mov dword [0x008c5150], eax
cmp dword [0x00918a90], 0
jne 0x43c0ab
mov rax, qword [rsp + 0x68]
mov qword [0x008c5148], rax
jmp 0x43c0bc
lea rdi, [0x008c5148]
mov rax, qword [rsp + 0x68]
call fcn.00465600
mov rcx, qword [0x008c3e10]
mov rdx, qword [0x008c3e18]
mov rbx, qword [rsp + 0x50]
xor esi, esi
jmp 0x43c0d6
inc rsi
cmp rsi, rdx
jge 0x43c0f6
mov rdi, qword [rcx + rsi*8]
nop
cmp rbx, rdi
je 0x43c0d3
test byte [rdi], al
mov r8d, 1
xchg dword [rdi + 0x2270], r8d
jmp 0x43c0d3
call fcn.00444380
mov rax, qword [0x008c5090]
jmp 0x43c108
mov rax, qword [rcx + 8]
test rax, rax
je 0x43c149
mov rcx, rax
mov eax, 1
xor ebx, ebx
lock cmpxchg dword [rcx + 0x2270], ebx
sete sil
test sil, sil
je 0x43c104
mov qword [rsp + 0x48], rcx
mov rdx, qword [rsp + 0x68]
mov rbx, qword [rdx]
mov rax, rcx
call rbx
dec dword [0x008c5150]
mov rcx, qword [rsp + 0x48]
xor ebx, ebx
jmp 0x43c104
mov ecx, dword [0x008c5150]
mov dword [rsp + 0x14], ecx
nop
nop
lea rax, [0x008c5058]
nop dword [rax]
call fcn.0040ba80
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rdx]
mov rax, qword [rsp + 0x50]
call rcx
mov rcx, qword [0x008c3e10]
mov qword [rsp + 0x40], rcx
mov rdx, qword [0x008c3e18]
mov qword [rsp + 0x20], rdx
xor eax, eax
jmp 0x43c194
lea rax, [rbx + 1]
cmp rax, rdx
jge 0x43c22b
mov rsi, qword [rcx + rax*8]
cmp dword [rsi + 4], 2
jne 0x43c1cf
cmp dword [rsi + 0x2270], 1
jne 0x43c1c5
mov rbx, rax
mov eax, 2
xor edi, edi
lock cmpxchg dword [rsi + 4], edi
sete r8b
jmp 0x43c1d7
mov rbx, rax
xor edi, edi
xor r8d, r8d
jmp 0x43c1d7
mov rbx, rax
xor edi, edi
xor r8d, r8d
test r8b, r8b
je 0x43c190
mov qword [rsp + 0x18], rbx
cmp byte [0x008ca7d0], 0
je 0x43c20a
mov qword [rsp + 0x30], rsi
mov rax, rsi
call fcn.00456d40
mov rax, qword [rsp + 0x30]
nop dword [rax]
call fcn.004565c0
mov rsi, qword [rsp + 0x30]
inc dword [rsi + 0x14]
mov rax, rsi
call fcn.0043d500
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x18]
xor edi, edi
jmp 0x43c190
mov ecx, dword [rsp + 0x14]
test ecx, ecx
jle 0x43c25b
jmp 0x43c23a
call fcn.00444380
lea rax, [0x008c5158]
mov ebx, 0x186a0
call fcn.0040bfc0
test al, al
je 0x43c235
nop
mov qword [0x008c5158], 0
cmp dword [0x008c5150], 0
jne 0x43c31e
mov rcx, qword [0x008c3e10]
mov rdx, qword [0x008c3e18]
xor eax, eax
jmp 0x43c280
inc rax
nop dword [rax]
cmp rax, rdx
jge 0x43c296
mov rsi, qword [rcx + rax*8]
test byte [rsi], al
cmp dword [rsi + 0x2270], 0
je 0x43c27a
jmp 0x43c30d
nop
nop
lea rax, [0x008c5058]
nop
call fcn.0040b860
cmp dword [0x00918a90], 0
jne 0x43c2bb
mov qword [0x008c5148], 0
jmp 0x43c2c9
lea rdi, [0x008c5148]
xor ecx, ecx
call fcn.00465700
nop
nop
lea rax, [0x008c5058]
call fcn.0040ba80
nop
mov rcx, qword [rsp + 0x28]
mov edx, dword [rcx + 0xd8]
lea ebx, [rdx - 1]
mov dword [rcx + 0xd8], ebx
cmp edx, 1
jne 0x43c303
cmp byte [r14 + 0xb1], 0
je 0x43c303
mov qword [r14 + 0x10], 0xfffffffffffffade
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
lea rax, [0x006c0964]
mov ebx, 0x1a
call fcn.00436a00
lea rax, [0x006bcb6c]
mov ebx, 0x12
call fcn.00436a00
lea rax, [0x006c4543]
mov ebx, 0x22
nop dword [rax + rax]
call fcn.00436a00
nop
mov qword [rsp + 8], rax
call fcn.00467ec0
mov rax, qword [rsp + 8]
jmp fcn.0043c020