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

Disassembly:
sub esp, 0x28
push ebx
push ebp
push esi
mov esi, dword [esp + 0x3c]
push edi
mov edi, ecx
push 0xfffffffffffffff8
push 0xfffffffffffffff8
mov eax, dword [edi + 0xfc]
push 0xfffffffffffffff8
push 0xfffffffffffffff8
push esi
mov dword [esp + 0x24], eax
call dword [sym.imp.USER32.dll_SetRect]
mov ebx, dword [esp + 0x3c]
test ebx, ebx
jl 0x4cc930
mov ecx, edi
call fcn.004cf540
cmp ebx, eax
jge 0x4cc930
push ebx
mov ecx, edi
call fcn.004d2cb0
test eax, eax
jne 0x4cc930
xor ebp, ebp
mov ecx, edi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
call fcn.004cf540
test eax, eax
jle 0x4cc7c5
mov ecx, dword [esp + 0x40]
push ecx
mov ecx, edi
call fcn.004d2cb0
test eax, eax
je 0x4cc7ab
mov eax, dword [esp + 0x40]
cmp eax, ebx
jge 0x4cc7a5
inc ebp
cmp eax, ebx
jle 0x4cc7ab
inc dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov ecx, edi
inc edx
mov dword [esp + 0x40], edx
call fcn.004cf540
cmp dword [esp + 0x40], eax
jl 0x4cc78a
mov dword [esp + 0x14], ebp
cmp ebx, dword [esp + 0x10]
jge 0x4cc930
mov eax, dword [edi + 0x1c]
lea edx, [esp + 0x18]
push edx
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
lea ecx, [esp + 0x28]
push ecx
mov ecx, edi
call fcn.004cd290
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
sub edx, ecx
test edx, edx
jg 0x4cc856
mov eax, dword [edi + 0x94]
lea edx, [ebx + 1]
imul edx, eax
imul eax, ebx
mov ecx, dword [esp + 0x1c]
lea edx, [edx + ecx - 1]
lea eax, [eax + ecx - 1]
mov ecx, dword [esp + 0x18]
push edx
mov edx, dword [esp + 0x24]
push edx
push eax
push ecx
push esi
call dword [sym.imp.USER32.dll_SetRect]
mov ecx, edi
call fcn.004d1f00
imul eax, ebp
mov edx, dword [esi + 4]
mov ecx, edi
sub edx, eax
mov dword [esi + 4], edx
call fcn.004d1f00
imul eax, ebp
mov ecx, dword [esi + 0xc]
pop edi
sub ecx, eax
mov al, 1
mov dword [esi + 0xc], ecx
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 8
cmp ebx, dword [edi + 0x124]
jle 0x4cc8c2
mov eax, dword [esp + 0x10]
mov ecx, dword [edi + 0x94]
sub eax, ebx
lea edx, [eax - 1]
imul eax, dword [edi + 0x94]
imul edx, ecx
mov ecx, dword [esp + 0x24]
mov ebp, ecx
sub ecx, eax
mov eax, dword [esp + 0x18]
sub ebp, edx
mov edx, dword [esp + 0x20]
push ebp
push edx
push ecx
push eax
push esi
call dword [sym.imp.USER32.dll_SetRect]
mov ecx, edi
call fcn.004d1f00
mov ebp, dword [esp + 0x3c]
mov edx, dword [esi + 4]
imul eax, ebp
add edx, eax
mov ecx, edi
mov dword [esi + 4], edx
call fcn.004d1f00
imul eax, ebp
mov ecx, dword [esi + 0xc]
mov ebp, dword [esp + 0x14]
add ecx, eax
mov dword [esi + 0xc], ecx
jmp 0x4cc90f
mov eax, dword [edi + 0x94]
lea edx, [ebx + 1]
imul edx, eax
imul eax, ebx
mov ecx, dword [esp + 0x1c]
lea edx, [edx + ecx - 1]
lea eax, [eax + ecx - 1]
mov ecx, dword [esp + 0x18]
push edx
mov edx, dword [esp + 0x24]
push edx
push eax
push ecx
push esi
call dword [sym.imp.USER32.dll_SetRect]
mov ecx, edi
call fcn.004d1f00
imul eax, ebp
mov edx, dword [esi + 4]
mov ecx, edi
sub edx, eax
mov dword [esi + 4], edx
call fcn.004d1f00
imul eax, ebp
sub dword [esi + 0xc], eax
mov eax, dword [edi + 0x174]
test eax, eax
je 0x4cc924
test ebx, ebx
je 0x4cc921
cmp ebp, ebx
jne 0x4cc924
inc dword [esi + 4]
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x28
ret 8
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x28
ret 8