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

Disassembly:
mov ecx, dword [0x99504c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4bad79
sub esp, 0x38
mov eax, dword [esp + 0x4c]
cmp eax, 1
je 0x4bab93
mov ecx, dword [esp + 0x44]
mov edx, ecx
and ecx, 0x1f
nop
cmp ecx, 0x19
jne 0x4bad12
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
xor esi, esi
jmp 0x4bac0a
mov eax, dword [esp + 0x48]
mov eax, dword [eax]
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.004baa60
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
add esp, 0x38
ret
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
call fcn.004baa60
mov eax, dword [esp + 0x24]
lea esi, [eax + 1]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov eax, ecx
mov ecx, dword [esp + 0x48]
cmp eax, esi
jle 0x4bacea
mov dword [esp + 0x24], esi
mov edi, dword [ecx + esi*4]
test esi, esi
jle 0x4babd5
mov dword [esp + 0x20], edx
and edx, 0x1f
nop
cmp edx, 0x16
jne 0x4bace1
movzx edx, byte [ebx + 0xf]
and edx, 0x1f
cmp edx, 0x12
ja 0x4bac4e
cmp edx, 0x11
jne 0x4bac44
mov edx, dword [ebx + 0x20]
jmp 0x4bac6e
cmp edx, 0x12
jne 0x4bac6c
mov edx, dword [ebx + 0x20]
jmp 0x4bac6e
cmp edx, 0x15
jne 0x4bac58
mov edx, dword [ebx + 0x24]
jmp 0x4bac6e
cmp edx, 0x16
jne 0x4bac62
mov edx, dword [ebx + 0x20]
jmp 0x4bac6e
cmp edx, 0x17
jne 0x4bac6c
mov edx, dword [ebx + 0x20]
jmp 0x4bac6e
xor edx, edx
movzx edx, byte [edx + 0xf]
and edx, 0x1f
cmp edx, 0x19
jne 0x4bacd8
mov dword [esp + 0x1c], edi
mov edx, dword [esp + 0x20]
test edx, 0x200
jne 0x4baca7
mov dword [esp + 0x30], ebp
test edx, 0x80
je 0x4bac9f
mov ecx, dword [ebp]
mov ebp, ecx
mov ecx, dword [esp + 0x48]
test ebp, ebp
je 0x4bacfa
mov ebp, dword [esp + 0x30]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
call fcn.004ba8b0
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
jmp 0x4babd5
mov edx, dword [esp + 0x20]
jmp 0x4babd5
mov edx, dword [esp + 0x20]
jmp 0x4babd5
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebp
mov dword [esp + 0x5c], edx
add esp, 0x38
ret
lea eax, [0x6f44e0]
mov dword [esp], eax
lea eax, [0x7b0548]
mov dword [esp + 4], eax
call fcn.00438b10
mov dword [esp + 0x2c], ecx
call fcn.004b9350
mov eax, dword [esp + 4]
mov dword [esp + 0x28], eax
mov ecx, dword [esp]
mov dword [esp + 0x34], ecx
lea edx, [0x70a680]
mov dword [esp], edx
call fcn.0040c500
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x28]
mov dword [eax + 4], ecx
mov ecx, dword [0x995310]
test ecx, ecx
jne 0x4bad6c
mov ecx, dword [esp + 0x34]
mov dword [eax], ecx
mov ecx, dword [esp + 0x2c]
mov dword [eax + 8], ecx
lea ecx, [0x6fc440]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00438b10
call fcn.00468e60
mov ecx, dword [esp + 0x34]
mov dword [edi], ecx
jmp 0x4bad4d
call fcn.00467a60
jmp fcn.004bab50