Function at 0x5c41b0
Capabilities:
Reference http user-agent string
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x99504c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x5c489d
sub esp, 0x88
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x5c41ec
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x8c]
jmp 0x5c427d
mov ecx, dword [esp + 0x94]
cmp byte [ecx], 0x2f
je 0x5c427d
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
lea edx, [0x73a4b5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.004ce910
mov eax, dword [esp + 0x10]
lea ecx, [eax + 1]
mov edx, dword [esp + 0x90]
cmp edx, ecx
jb 0x5c4897
lea eax, [esp + 0x44]
mov dword [esp], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x94]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x10], eax
call fcn.00452120
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, eax
mov eax, ecx
mov ecx, edx
test eax, eax
je 0x5c4330
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
nop
lea edx, [esp + 0x78]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x80]
inc ebx
mov ebp, dword [esp + 0x7c]
cmp edx, ebx
jae 0x5c4314
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x34], eax
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6f4820]
mov dword [esp + 0x10], eax
call fcn.0044e6e0
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x84], eax
mov dword [esp + 0x7c], ebp
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x80], ebx
mov byte [ebx + ebp - 1], 0x2f
mov edx, 1
mov ebx, 1
xor ebp, ebp
xor esi, esi
jmp 0x5c435d
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
add esp, 0x88
ret
mov edi, edx
mov edx, ecx
mov ecx, edi
mov edi, eax
mov eax, ebx
mov ebx, esi
mov esi, ebp
mov ebp, edi
test dl, dl
je 0x5c457d
mov byte [esp + 0x27], bl
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x73a4b5]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
call fcn.004d10d0
mov eax, dword [esp + 0x14]
movzx ecx, byte [esp + 0x20]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x10]
cmp eax, 1
jne 0x5c43ab
cmp byte [ebp], 0x2e
jne 0x5c43ab
xor esi, esi
jmp 0x5c434d
mov byte [esp + 0x26], cl
mov dword [esp + 0x30], ebx
mov dword [esp + 0x68], edx
mov dword [esp + 0x38], eax
mov dword [esp + 0x70], ebp
cmp eax, 2
jne 0x5c4411
cmp word [ebp], 0x2e2e
jne 0x5c4411
mov esi, dword [esp + 0x7c]
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
mov eax, dword [esp + 0x80]
cmp eax, esi
ja 0x5c4889
cmp eax, 1
jb 0x5c487d
lea esi, [eax - 1]
mov dword [esp + 0x2c], esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 1
add esi, edi
lea edi, [eax - 2]
mov eax, dword [esp + 0x2c]
jmp 0x5c46ae
movzx esi, byte [esp + 0x27]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x5c44b0
mov esi, dword [esp + 0x78]
nop
nop
test esi, esi
je 0x5c4437
lea edi, [esp + 0x78]
cmp esi, edi
je 0x5c443f
jmp 0x5c4690
lea esi, [esp + 0x78]
mov dword [esp + 0x78], esi
mov esi, dword [esp + 0x84]
mov edi, dword [esp + 0x80]
inc edi
mov ecx, dword [esp + 0x7c]
cmp esi, edi
jae 0x5c449f
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x6f4820]
mov dword [esp + 0x10], eax
call fcn.0044e6e0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x84], eax
mov dword [esp + 0x7c], ecx
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x70]
mov dword [esp + 0x80], edi
mov byte [edi + ecx - 1], 0x2f
movzx ecx, byte [esp + 0x26]
mov esi, dword [esp + 0x78]
nop
nop
test esi, esi
je 0x5c44c7
lea edi, [esp + 0x78]
cmp esi, edi
je 0x5c44cf
jmp 0x5c4678
lea esi, [esp + 0x78]
mov dword [esp + 0x78], esi
mov esi, dword [esp + 0x84]
mov edi, dword [esp + 0x80]
lea ecx, [eax + edi]
mov edx, dword [esp + 0x7c]
cmp esi, ecx
jae 0x5c4522
mov dword [esp + 0x40], edi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
lea ecx, [0x6f4820]
mov dword [esp + 0x10], ecx
call fcn.0044e6e0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x70]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x74], edx
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], ecx
lea ebx, [edx + edi]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.004697f0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x7c], eax
xor eax, eax
movzx ecx, byte [esp + 0x26]
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x70]
mov esi, eax
mov eax, dword [esp + 0x38]
jmp 0x5c434d
cmp ebp, 1
jne 0x5c4587
cmp byte [esi], 0x2e
je 0x5c4597
cmp ebp, 2
jne 0x5c4612
cmp word [esi], 0x2e2e
jne 0x5c4612
mov eax, dword [esp + 0x78]
nop
nop
test eax, eax
je 0x5c45ae
lea ecx, [esp + 0x78]
cmp eax, ecx
je 0x5c45b6
jmp 0x5c4660
lea eax, [esp + 0x78]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x80]
inc ecx
mov edx, dword [esp + 0x7c]
cmp eax, ecx
jae 0x5c4606
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6f4820]
mov dword [esp + 0x10], eax
call fcn.0044e6e0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x84], eax
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
mov byte [ecx + edx - 1], 0x2f
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x7c]
mov edx, ecx
neg ecx
nop
cmp eax, ecx
ja 0x5c4652
cmp eax, 1
jle 0x5c463b
cmp byte [edx + 1], 0x2f
jne 0x5c4637
lea ecx, [edx + 1]
dec eax
jmp 0x5c463d
mov ecx, edx
jmp 0x5c463d
mov ecx, edx
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], eax
add esp, 0x88
ret
test edx, edx
je 0x5c465b
call fcn.0045ff10
call fcn.0045ff50
lea eax, [0x6f44e0]
mov dword [esp], eax
lea eax, [0x7b028c]
mov dword [esp + 4], eax
call fcn.00438b10
lea eax, [0x6f44e0]
mov dword [esp], eax
lea eax, [0x7b028c]
mov dword [esp + 4], eax
call fcn.00438b10
lea eax, [0x6f44e0]
mov dword [esp], eax
lea eax, [0x7b028c]
mov dword [esp + 4], eax
call fcn.00438b10
dec edi
movzx ecx, byte [esp + 0x26]
test edi, edi
jl 0x5c46c9
cmp edi, eax
jae 0x5c4874
lea ecx, [edi + esi]
cmp byte [ecx], 0x2f
jne 0x5c46a8
movzx ecx, byte [esp + 0x26]
jmp 0x5c46ce
mov edi, 0xffffffff
mov dword [esp + 0x64], esi
mov dword [esp + 0x28], edi
nop
mov dword [esp + 0x78], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x7c], 0
nop
nop
lea esi, [esp + 0x78]
mov dword [esp + 0x78], esi
mov esi, dword [esp + 0x84]
mov eax, dword [esp + 0x80]
inc eax
mov ecx, dword [esp + 0x7c]
cmp esi, eax
jae 0x5c4769
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x6f4820]
mov dword [esp + 0x10], eax
call fcn.0044e6e0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x84], eax
mov dword [esp + 0x7c], ecx
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x70]
mov edi, dword [esp + 0x28]
mov eax, edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0x80], eax
mov byte [eax + ecx - 1], 0x2f
cmp edi, 0xffffffff
jne 0x5c4784
mov eax, 1
jmp 0x5c4561
mov eax, dword [esp + 0x2c]
cmp edi, eax
ja 0x5c486b
mov eax, dword [esp + 0x78]
nop
test eax, eax
je 0x5c47a6
lea ecx, [esp + 0x78]
cmp eax, ecx
je 0x5c47ae
jmp 0x5c4853
lea eax, [esp + 0x78]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x80]
lea esi, [edi + ecx]
mov edx, dword [esp + 0x7c]
cmp eax, esi
jae 0x5c47fd
mov dword [esp + 0x40], ecx
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
lea eax, [0x6f4820]
mov dword [esp + 0x10], eax
call fcn.0044e6e0
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x74], edx
add ecx, edx
mov dword [esp], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
call fcn.004697f0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x7c], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x70]
movzx eax, byte [esp + 0x27]
jmp 0x5c4561
lea eax, [0x6f44e0]
mov dword [esp], eax
lea eax, [0x7b028c]
mov dword [esp + 4], eax
call fcn.00438b10
mov ecx, edi
mov edx, eax
call fcn.00468ef0
mov ecx, eax
mov eax, edi
call fcn.00468ed0
mov eax, 1
xor ecx, ecx
call fcn.00468f30
test edi, edi
je 0x5c4892
call fcn.0045ff10
call fcn.0045ff50
call fcn.00468ef0
nop
call fcn.00467a60
jmp fcn.005c41b0