Function at 0x655490
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]
cmp esp, dword [ecx + 8]
jbe 0x655819
sub esp, 0x70
mov edx, dword [esp + 0x74]
mov ebx, dword [edx + 4]
mov eax, dword [esp + 0x78]
cmp eax, ebx
jg 0x655764
xor ecx, ecx
jmp 0x6554cd
mov ebx, dword [esp + 0x20]
lea ecx, [ebx + 1]
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
cmp eax, ecx
jle 0x65563f
mov ebx, dword [edx + 4]
cmp ecx, ebx
jae 0x65575b
mov dword [esp + 0x20], ecx
mov eax, dword [edx]
lea ebx, [ecx + ecx*4]
lea esi, [eax + ebx*4]
lea edi, [esp + 0x5c]
call fcn.004695de
mov eax, dword [edx + 0xc]
mov dword [esp + 0x34], eax
mov ecx, dword [edx + 0x10]
mov dword [esp + 0x30], ecx
mov ebx, dword [esp + 0x20]
sar ebx, 0x1f
mov dword [esp + 0x2c], ebx
mov esi, dword [edx + 0x14]
mov edi, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
lea ecx, [0x6f7200]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
call fcn.004109f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x34]
add edx, ecx
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x30]
adc ebx, ebp
add edx, 1
mov dword [esp + 0x24], edx
adc ebx, 0
mov dword [esp + 0x2c], ebx
cmp dword [eax], edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp dword [eax + 4], ebx
sete al
and eax, ebp
test al, al
je 0x655597
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x60]
lea ebp, [0x6f7200]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.00411410
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x18]
lea edx, [0x6f8960]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 8], ecx
call fcn.0040d350
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x24]
cmp dword [eax], ecx
sete cl
mov edx, dword [esp + 0x2c]
cmp dword [eax + 4], edx
sete al
and ecx, eax
test cl, cl
je 0x6554be
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x18]
lea edx, [0x6f8960]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 8], ecx
call fcn.0040dd70
jmp 0x6554be
mov ecx, dword [edx + 4]
cmp eax, ecx
ja 0x655756
mov ebx, dword [edx]
mov ebp, dword [edx + 8]
lea esi, [0x722540]
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
sub ecx, eax
sub ebp, eax
lea esi, [eax + eax*4]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl esi, 2
sar ebp, 0x1f
and esi, ebp
add ebx, esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00411c10
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x78]
sub ecx, edx
jmp 0x6556a3
mov ebx, eax
xor eax, eax
call fcn.004690fb
mov ecx, dword [esp + 0x1c]
inc ecx
mov eax, ebx
mov ebx, dword [eax + 4]
cmp ecx, ebx
jge 0x6556ee
jae 0x65574d
mov dword [esp + 0x1c], ecx
lea ebx, [ecx + ecx*4]
mov ebp, dword [0x995310]
mov esi, dword [eax]
lea edi, [esi + ebx*4]
test ebp, ebp
je 0x655693
mov dword [esp + 0x38], edi
lea eax, [0x722540]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00411b40
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0x38]
jmp 0x655693
sub ebx, edx
mov ebp, dword [eax + 8]
cmp ebp, ebx
jb 0x655744
mov dword [eax + 4], ebx
mov ecx, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
mov ebp, edx
sar edx, 0x1f
add ebp, ecx
adc edx, ebx
cmp ebx, edx
seta bl
xchg esi, ebx
sete bl
xchg esi, ebx
cmp ebp, ecx
setb cl
and ecx, esi
or ebx, ecx
test bl, bl
jne 0x65572c
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], edx
add esp, 0x70
ret
lea eax, [0x6f44e0]
mov dword [esp], eax
lea eax, [0x7b09a0]
mov dword [esp + 4], eax
call fcn.00438b10
mov ecx, ebx
mov edx, ebp
call fcn.00468f10
mov eax, ecx
mov ecx, ebx
call fcn.00468ed0
call fcn.00468f30
mov eax, ecx
mov ecx, ebx
call fcn.00468ed0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp], eax
call fcn.00409c30
mov eax, dword [esp + 4]
lea ecx, [0x6f4660]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.00409c30
mov eax, dword [esp + 4]
lea ecx, [0x6f4660]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], eax
lea eax, [0x74ac2f]
mov dword [esp], eax
mov dword [esp + 4], 0x28
lea eax, [esp + 0x4c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c4b20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409d40
mov eax, dword [esp + 8]
lea ecx, [0x6f44e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00438b10
nop
call fcn.00467a60
jmp fcn.00655490