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

Disassembly:
mov ecx, dword [0x99504c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xb4]
cmp eax, dword [ecx + 8]
jbe 0x5ad359
sub esp, 0x134
lea edi, [esp + 0xf4]
xor eax, eax
call fcn.004690f6
lea ecx, [esp + 0xf4]
mov dword [esp], ecx
mov ecx, dword [esp + 0x13c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x140]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x144]
mov dword [esp + 0xc], ebx
call fcn.00589cd0
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x5ad307
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x120], ecx
lea edi, [esp + 0xcc]
xor eax, eax
call fcn.004690f6
nop
lea ecx, [esp + 0xcc]
mov dword [esp], ecx
mov edx, dword [esp + 0x120]
mov dword [esp + 4], edx
call fcn.0058ba00
lea edi, [esp + 0xa4]
xor eax, eax
call fcn.004690f6
mov ecx, dword [0x96ea1c]
lea edx, [esp + 0xa4]
mov dword [esp], edx
lea edx, [esp + 0xcc]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00589740
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x130], ecx
lea edi, [esp + 0x7c]
xor eax, eax
call fcn.004690f6
mov ecx, dword [0x96ea20]
nop
lea edx, [esp + 0x7c]
mov dword [esp], edx
lea ebx, [esp + 0xcc]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.0058afc0
mov ecx, dword [0x96ea1c]
lea edx, [esp + 0x7c]
mov dword [esp], edx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00589690
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x128], ecx
lea edi, [esp + 0x54]
xor eax, eax
call fcn.004690f6
lea ecx, [esp + 0x54]
mov dword [esp], ecx
mov ecx, dword [esp + 0x130]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x128]
mov dword [esp + 8], ecx
call fcn.0058ab10
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x5ad2c0
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x124], ecx
lea edi, [esp + 0x2c]
xor eax, eax
call fcn.004690f6
mov ecx, dword [0x966df0]
lea edx, [esp + 0x2c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x124]
mov dword [esp + 8], ecx
call fcn.00589740
mov ecx, dword [esp + 0x140]
cmp ecx, 0x1f
jbe 0x5ad34e
mov eax, dword [esp + 0x13c]
movzx eax, byte [eax + 0x1f]
shr al, 7
movzx eax, al
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x11c], ecx
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
mov esi, dword [esp + 0x124]
mov ebp, dword [esi]
mov dword [esp + 0x28], ebp
mov edi, dword [esi + 4]
sar eax, 0x1f
nop
xor ecx, ecx
mov ebp, dword [esp + 0x20]
sub ecx, ebp
mov dword [esp + 0x1c], ecx
mov ebp, 0
sbb ebp, eax
mov dword [esp + 0x24], ebp
and edx, ecx
and ebx, ebp
not ecx
xchg ebp, ebx
not ebx
xchg ebp, ebx
mov eax, dword [esp + 0x28]
and eax, ecx
or edx, eax
mov dword [esi], edx
and edi, ebp
or ebx, edi
mov dword [esi + 4], ebx
mov eax, dword [esp + 0x11c]
mov edx, dword [eax + 8]
mov ebx, dword [esp + 0x1c]
and edx, ebx
mov edi, dword [eax + 0xc]
mov ebx, dword [esp + 0x24]
and edi, ebx
mov ebx, dword [esi + 8]
and ebx, ecx
or edx, ebx
mov ebx, dword [esi + 0xc]
mov dword [esi + 8], edx
and ebx, ebp
or ebx, edi
mov dword [esi + 0xc], ebx
mov edx, dword [eax + 0x10]
mov ebx, dword [esp + 0x1c]
and edx, ebx
mov edi, dword [eax + 0x14]
mov ebx, dword [esp + 0x24]
and edi, ebx
mov ebx, dword [esi + 0x10]
and ebx, ecx
or edx, ebx
mov ebx, dword [esi + 0x14]
mov dword [esi + 0x10], edx
and ebx, ebp
or edi, ebx
mov dword [esi + 0x14], edi
mov edx, dword [eax + 0x18]
mov ebx, dword [esp + 0x1c]
and edx, ebx
mov edi, dword [eax + 0x1c]
mov ebx, dword [esp + 0x24]
and edi, ebx
mov ebx, dword [esi + 0x18]
and ebx, ecx
or ebx, edx
mov edx, dword [esi + 0x1c]
mov dword [esi + 0x18], ebx
and edx, ebp
or edx, edi
mov dword [esi + 0x1c], edx
mov edx, dword [eax + 0x20]
mov ebx, dword [esp + 0x1c]
and ebx, edx
mov eax, dword [eax + 0x24]
mov edx, dword [esp + 0x24]
and edx, eax
mov eax, dword [esi + 0x20]
and ecx, eax
or ecx, ebx
mov eax, dword [esi + 0x24]
mov dword [esi + 0x20], ecx
and ebp, eax
or ebp, edx
mov dword [esi + 0x24], ebp
mov edi, dword [esp + 0x138]
lea eax, [edi + 0x28]
lea ecx, [edi + 0x50]
mov dword [esp + 0x12c], ecx
lea edx, [edi + 0x78]
call fcn.004695ac
mov edi, eax
mov esi, dword [esp + 0x120]
call fcn.004695ac
mov esi, dword [0x966df4]
mov edi, dword [esp + 0x12c]
call fcn.004695ac
nop
mov dword [esp], edx
mov eax, dword [esp + 0x124]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x120]
mov dword [esp + 8], eax
call fcn.0058afc0
mov eax, dword [esp + 0x138]
mov dword [esp + 0x148], eax
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], 0
add esp, 0x134
ret
lea eax, [0x701240]
mov dword [esp], eax
call fcn.0040c500
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x24
lea ecx, [0x748d43]
mov dword [eax], ecx
mov dword [esp + 0x148], 0
lea ecx, [0x7b0bb8]
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], eax
add esp, 0x134
ret
lea eax, [0x701240]
mov dword [esp], eax
call fcn.0040c500
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x2b
lea ecx, [0x74bd8a]
mov dword [eax], ecx
mov dword [esp + 0x148], 0
lea ecx, [0x7b0bb8]
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], eax
add esp, 0x134
ret
mov eax, 0x1f
call fcn.00468ed0
nop
call fcn.00467a60
jmp fcn.005acf80