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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x3c0]
cmp eax, dword [ecx + 8]
jbe 0x6fc31709
sub esp, 0x440
lea edi, [esp + 0x40]
mov ecx, 0x100
xor eax, eax
rep stosd dword es:[edi], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x20], 0
mov edx, dword fs:[0x14]
mov edx, dword [edx]
mov edx, dword [edx + 0x18]
cmp dword [0x6fe010b0], 0xffffffff
je 0x6fc3156c
mov dword [esp + 0x3c], edx
mov ecx, dword [esp + 0x448]
test ecx, ecx
jge 0x6fc313ed
mov ebp, dword [esp + 0x444]
mov eax, 0xffffffff
jmp 0x6fc3149d
sete bl
mov ebp, dword [esp + 0x444]
test ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
je 0x6fc3140f
xor eax, eax
jmp 0x6fc3149d
test ecx, ecx
xchg esi, ebx
setl bl
xchg esi, ebx
cmp ebp, 0xf4240
xchg edi, ebx
setb bl
xchg edi, ebx
and edi, ebx
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x6fc31436
mov eax, 1
jmp 0x6fc3149d
cmp ebp, 0xa4c68000
setb bl
cmp ecx, 0x38d7e
xchg esi, ebx
sete bl
xchg esi, ebx
xchg edi, ebx
setl bl
xchg edi, ebx
and esi, ebx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
jne 0x6fc31464
mov eax, 0x3b9aca00
jmp 0x6fc3149d
mov eax, dword [esp + 0x448]
mov dword [esp + 4], eax
mov dword [esp], ebp
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0xf4240
call fcn.6fc5cec0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x448]
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x444]
mov ebx, dword [0x700a74e4]
test ebx, ebx
je 0x6fc31703
mov esi, eax
mov eax, 0x40
cmp ebx, 0xffffffff
je 0x6fc314bc
cdq
idiv ebx
jmp 0x6fc314be
neg eax
mov dword [esp + 0x28], eax
cmp eax, 8
jae 0x6fc314cf
mov dword [esp + 0x28], 8
test ebp, ebp
setne al
test ecx, ecx
setne dl
or edx, eax
test dl, dl
je 0x6fc314ea
mov eax, dword [esp + 0x3c]
mov byte [eax + 0x89], 1
mov eax, dword [0x6fe010b0]
mov ecx, dword [0x6fe304d0]
lea edx, [esp + 0x40]
mov ebx, dword [esp + 0x28]
lea ebp, [esp + 0x28]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], 0
call fcn.6fc34270
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x6fc31540
mov edx, dword [esp + 0x3c]
mov byte [edx + 0x89], 0
xor eax, eax
jmp 0x6fc315ea
mov eax, dword [esp + 0x3c]
mov byte [eax + 0x89], 0
call fcn.6fc62cb0
mov eax, dword [esp]
cmp eax, 0x102
jne 0x6fc3157e
mov dword [esp + 0x44c], 0
add esp, 0x440
ret
mov dword [esp + 0x44c], 0
add esp, 0x440
ret
mov dword [esp + 0x34], eax
call fcn.6fc38990
lea eax, [0x6fe8c24d]
mov dword [esp], eax
mov dword [esp + 4], 0x34
call fcn.6fc39270
mov eax, dword [esp + 0x34]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.6fc39070
lea eax, [0x6fe7bc57]
mov dword [esp], eax
mov dword [esp + 4], 3
call fcn.6fc39270
call fcn.6fc38a00
lea eax, [0x6fe824d1]
mov dword [esp], eax
mov dword [esp + 4], 0x17
call fcn.6fc36d90
mov ebx, dword [esp + 0x2c]
inc ebx
mov eax, ebx
cmp dword [esp + 0x28], eax
jbe 0x6fc316e7
cmp eax, 0x40
jae 0x6fc316f9
mov dword [esp + 0x2c], eax
shl eax, 4
mov eax, dword [esp + eax + 0x44]
test eax, eax
je 0x6fc31697
mov dword [esp + 0x38], eax
mov dword [esp + 0x24], 0
mov ecx, dword [eax + 0x14]
mov edx, dword [0x70080424]
mov ecx, dword [ecx + 4]
lea ebp, [esp + 0x24]
lea esi, [esp + 0x30]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], esi
call fcn.6fc34220
mov eax, dword [esp + 0x18]
test eax, eax
je 0x6fc3165c
xor eax, eax
jmp 0x6fc31664
call fcn.6fc62cb0
mov eax, dword [esp]
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x20]
mov dword [esp], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call fcn.6fc31720
mov eax, dword [esp + 0x448]
mov edx, dword [esp + 0x444]
jmp 0x6fc315e3
lea eax, [0x700a7510]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.6fc023a0
mov eax, dword [esp + 0x448]
test eax, eax
sete cl
mov edx, dword [esp + 0x444]
test edx, edx
sete bl
and ecx, ebx
test cl, cl
je 0x6fc315e3
call fcn.6fc31260
mov eax, dword [esp + 0x448]
mov edx, dword [esp + 0x444]
jmp 0x6fc315e3
mov eax, dword [esp + 0x20]
mov dword [esp + 0x44c], eax
add esp, 0x440
ret
mov ecx, 0x40
call fcn.6fc61f90
call fcn.6fc353b0
nop
call fcn.6fc60ad0
jmp fcn.6fc31360