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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x6fc2f97a
sub esp, 0x2c
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
cmp eax, ecx
jae 0x6fc2f51c
nop
mov edx, ecx
sub ecx, eax
jmp 0x6fc2f520
mov edx, ecx
xor ecx, ecx
test ecx, ecx
je 0x6fc2f8ef
mov ecx, dword [esp + 0x30]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.6fc2f350
mov eax, dword [esp + 8]
test eax, eax
jle 0x6fc2f568
mov ebx, dword [esp + 0x30]
mov ecx, dword [ebx + 4]
mov ebp, dword [ebx]
lea esi, [eax - 1]
cmp ecx, esi
jbe 0x6fc2f8e8
lea ebp, [ebp + eax*8 - 8]
mov esi, dword [esp + 0x34]
cmp dword [ebp + 4], esi
xchg ebp, ebx
sete bl
xchg ebp, ebx
jmp 0x6fc2f572
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
xor ebp, ebp
mov ecx, dword [ebx + 4]
mov edi, dword [ebx]
mov edx, dword [ebx + 8]
cmp ecx, eax
jle 0x6fc2f59e
jbe 0x6fc2f8e3
lea ebx, [edi + eax*8]
mov esi, dword [esp + 0x38]
cmp dword [ebx], esi
sete bl
mov esi, dword [esp + 0x34]
mov byte [esp + 0x13], bl
mov ebx, dword [esp + 0x30]
jmp 0x6fc2f5ac
mov dword [esp + 0x20], eax
xor eax, eax
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x20]
movzx ebx, byte [esp + 0x13]
test bl, bl
je 0x6fc2f687
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x6fc2f683
cmp ecx, eax
jbe 0x6fc2f8de
lea ebx, [eax - 1]
lea ebp, [edi + eax*8]
mov ebp, dword [ebp + 4]
cmp ecx, ebx
jbe 0x6fc2f8d7
lea ebx, [edi + eax*8 - 4]
mov dword [ebx], ebp
mov ebx, dword [esp + 0x30]
mov ecx, dword [ebx + 4]
mov ebp, dword [ebx]
mov edi, dword [ebx + 8]
cmp ecx, eax
jb 0x6fc2f8d2
mov dword [esp + 0x1c], ecx
mov edx, eax
shl eax, 3
sub ecx, edx
sub edi, edx
mov dword [esp + 0x18], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, eax
add edi, ebp
lea eax, [edx + 1]
mov edx, esi
mov esi, dword [esp + 0x1c]
cmp esi, eax
jb 0x6fc2f8cb
mov esi, dword [esp + 0x18]
dec esi
xchg esi, ebx
neg ebx
xchg esi, ebx
shl eax, 3
sar esi, 0x1f
and esi, eax
lea eax, [ebp + esi]
lea ebp, [ecx - 1]
cmp ecx, ebp
jg 0x6fc2f645
mov ebp, ecx
cmp eax, edi
je 0x6fc2f664
mov dword [esp], edi
mov dword [esp + 4], eax
shl ebp, 3
mov dword [esp + 8], ebp
call fcn.6fc62890
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov eax, dword [ebx + 8]
mov ebp, dword [ebx + 4]
lea ecx, [ebp - 1]
cmp eax, ecx
jb 0x6fc2f8c4
mov dword [ebx + 4], ecx
mov eax, dword [esp + 0x38]
cmp edx, eax
jmp 0x6fc2f873
test bl, bl
jmp 0x6fc2f6b3
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x6fc2f6b1
lea edx, [eax - 1]
cmp ecx, edx
jbe 0x6fc2f8bd
lea eax, [edi + eax*8 - 4]
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
cmp esi, ecx
mov edx, dword [esp + 0x30]
mov ebx, ecx
mov ecx, esi
jmp 0x6fc2f86d
test bl, bl
je 0x6fc2f6d5
cmp ecx, eax
jbe 0x6fc2f8b8
lea eax, [edi + eax*8]
mov dword [eax], esi
mov eax, dword [esp + 0x38]
cmp esi, eax
mov ecx, esi
mov edx, dword [esp + 0x30]
mov ebx, eax
jmp 0x6fc2f86d
mov dword [esp + 0x14], eax
lea ebx, [ecx + 1]
cmp edx, ebx
jl 0x6fc2f757
jb 0x6fc2f8b1
mov edx, dword [esp + 0x30]
mov dword [edx + 4], ebx
mov ebp, dword [edx]
mov edi, dword [edx + 8]
lea esi, [eax + 1]
cmp esi, ebx
ja 0x6fc2f8a8
sub ecx, eax
sub edi, eax
lea edx, [edi - 1]
neg edx
shl esi, 3
sar edx, 0x1f
and edx, esi
add edx, ebp
cmp eax, ebx
ja 0x6fc2f8a1
lea ebx, [ecx + 1]
xchg edi, ebx
neg ebx
xchg edi, ebx
mov esi, eax
shl eax, 3
sar edi, 0x1f
and edi, eax
add ebp, edi
cmp ecx, ebx
jg 0x6fc2f733
mov ebx, ecx
cmp ebp, edx
je 0x6fc2f84b
mov dword [esp], edx
mov dword [esp + 4], ebp
shl ebx, 3
mov dword [esp + 8], ebx
call fcn.6fc62890
mov esi, dword [esp + 0x14]
jmp 0x6fc2f84b
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x28], edi
mov eax, dword [esp + 0x30]
mov dword [eax + 4], ebx
mov ecx, edx
shl edx, 1
mov dword [eax + 8], edx
shl ecx, 4
mov ebx, dword [eax + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], ebx
call fcn.6fc0bd80
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
mov edx, dword [ecx + 8]
mov ebx, dword [esp + 0x14]
cmp edx, ebx
jb 0x6fc2f89a
mov edx, dword [esp + 0x1c]
cmp edx, ebx
jb 0x6fc2f893
mov ebp, dword [esp + 0x28]
cmp eax, ebp
je 0x6fc2f7db
mov dword [esp], eax
mov dword [esp + 4], ebp
shl ebx, 3
mov dword [esp + 8], ebx
call fcn.6fc62890
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x28]
mov esi, dword [ecx + 4]
mov edi, dword [ecx]
mov eax, ebp
mov ebp, dword [ecx + 8]
lea edx, [ebx + 1]
cmp esi, edx
jb 0x6fc2f88a
sub ebp, ebx
dec ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl edx, 3
sar ebp, 0x1f
and ebp, edx
lea edx, [edi + ebp]
sub esi, ebx
lea ebp, [esi - 1]
mov esi, dword [esp + 0x18]
sub esi, ebx
mov edi, dword [esp + 0x1c]
sub edi, ebx
xchg edi, ebx
neg ebx
xchg edi, ebx
shl ebx, 3
sar edi, 0x1f
and edi, ebx
lea ebx, [edi + eax]
cmp esi, ebp
jl 0x6fc2f82c
mov esi, ebp
cmp ebx, edx
je 0x6fc2f847
mov dword [esp], edx
mov dword [esp + 4], ebx
shl esi, 3
mov dword [esp + 8], esi
call fcn.6fc62890
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x30]
mov ebx, dword [edx]
mov ecx, dword [edx + 4]
cmp ecx, esi
jbe 0x6fc2f883
lea eax, [ebx + esi*8]
mov ecx, dword [esp + 0x34]
mov dword [eax], ecx
lea eax, [ebx + esi*8 + 4]
mov ebx, dword [esp + 0x38]
mov dword [eax], ebx
cmp ecx, ebx
mov eax, ebx
mov ebx, edx
mov edx, ecx
jae 0x6fc2f87a
nop
sub eax, edx
jmp 0x6fc2f87c
xor eax, eax
add dword [ebx + 0xc], eax
add esp, 0x2c
ret
mov eax, esi
call fcn.6fc61f80
mov eax, edx
mov ecx, esi
call fcn.6fc61fe0
mov ecx, ebx
call fcn.6fc61fc0
mov ecx, ebx
call fcn.6fc61fc0
mov ecx, ebx
call fcn.6fc61fe0
mov eax, esi
mov ecx, ebx
call fcn.6fc61fe0
mov ecx, ebx
call fcn.6fc61fc0
call fcn.6fc61f80
mov eax, edx
call fcn.6fc61f80
mov edx, eax
call fcn.6fc61fc0
mov ecx, esi
call fcn.6fc61fe0
call fcn.6fc61fe0
mov eax, ebx
call fcn.6fc61f80
call fcn.6fc61f80
call fcn.6fc61f80
mov eax, esi
call fcn.6fc61f80
call fcn.6fc38990
lea eax, [0x6fe7ff99]
mov dword [esp], eax
mov dword [esp + 4], 0x12
call fcn.6fc39270
mov dword [esp + 4], 0
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.6fc390f0
lea eax, [0x6fe7bbaa]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.6fc39270
mov dword [esp + 4], 0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.6fc390f0
lea eax, [0x6fe7bc48]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.6fc39270
call fcn.6fc38a00
lea eax, [0x6fe894e0]
mov dword [esp], eax
mov dword [esp + 4], 0x29
call fcn.6fc36d90
nop
call fcn.6fc60ad0
jmp fcn.6fc2f4f0