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

Disassembly:
push 0xffffffffffffffff
push 0x51ea20
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x5c
push ebx
push ebp
push esi
mov esi, ecx
lea eax, [esp + 0x44]
push edi
mov ecx, dword [esi + 0x1c]
mov edi, dword [sym.imp.USER32.dll_GetClientRect]
push eax
push ecx
call edi
mov edx, dword [esi + 0x1c]
mov ebx, dword [sym.imp.USER32.dll_GetParent]
push edx
call ebx
push eax
call fcn.005112cb
mov edx, dword [eax + 0x1c]
lea ecx, [esp + 0x38]
push ecx
push edx
call edi
lea eax, [esp + 0x48]
mov ecx, esi
push eax
call fcn.005162d2
mov ecx, dword [esi + 0x1c]
push ecx
call ebx
push eax
call fcn.005112cb
lea edx, [esp + 0x48]
mov ecx, eax
push edx
call fcn.00516296
push esi
lea ecx, [esp + 0x5c]
call fcn.00516428
mov eax, dword [esi + 0x1c]
push 0
push 0
push 0x31
push eax
mov dword [esp + 0x84], 0
call dword [sym.imp.USER32.dll_SendMessageA]
push eax
call fcn.005166bb
push eax
lea ecx, [esp + 0x5c]
call fcn.00515d24
mov edx, dword [esp + 0x60]
lea ecx, [esp + 0x20]
mov ebp, 1
push ecx
push ebp
push 0x945218
push edx
mov edi, eax
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
push edi
lea ecx, [esp + 0x5c]
call fcn.00515d24
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x18], ebp
lea eax, [ecx + ecx]
mov edx, eax
mov eax, dword [esp + 0x40]
sub eax, edx
mov edx, dword [esp + 0x38]
sub eax, edx
cdq
idiv ecx
cmp eax, ebp
jl 0x4a9d80
mov dword [esp + 0x18], eax
mov eax, dword [0x94f978]
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x74], 1
push ecx
mov ecx, esi
call fcn.00511c96
mov edi, dword [esp + 0x1c]
xor ecx, ecx
mov ebx, edi
xor eax, eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebp
mov dl, byte [edi]
cmp dl, 0xd
jne 0x4a9db6
inc edi
jmp 0x4a9dac
cmp dl, 0xa
jne 0x4a9dd9
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
inc edi
inc edx
cmp eax, ecx
mov dword [esp + 0x14], edx
jg 0x4a9dd1
mov dword [esp + 0x10], ecx
xor ecx, ecx
mov ebx, edi
xor eax, eax
jmp 0x4a9dac
test dl, dl
je 0x4a9e06
cmp dl, 0x20
jne 0x4a9de7
lea eax, [edi + 1]
jmp 0x4a9dee
test dl, 0x80
je 0x4a9dee
inc edi
inc ecx
mov ebp, dword [esp + 0x18]
inc edi
inc ecx
dec ebp
cmp ecx, ebp
jne 0x4a9dfe
test byte [edi], 0x80
jne 0x4a9e0a
cmp ecx, dword [esp + 0x18]
jl 0x4a9dac
jmp 0x4a9e0a
test ecx, ecx
je 0x4a9e4f
test dl, dl
mov ebp, ebx
je 0x4a9e2b
cmp dl, 0x20
je 0x4a9e2b
test eax, eax
je 0x4a9e2b
mov ebx, eax
sub eax, ebp
cmp dword [esp + 0x10], eax
jg 0x4a9e27
mov dword [esp + 0x10], eax
sub ecx, eax
jmp 0x4a9e40
cmp dword [esp + 0x10], ecx
jg 0x4a9e35
mov dword [esp + 0x10], ecx
mov al, byte [edi]
xor ecx, ecx
cmp al, 0xa
jne 0x4a9e3e
inc edi
mov ebx, edi
xor eax, eax
test dl, dl
je 0x4a9e4f
inc dword [esp + 0x14]
jmp 0x4a9dac
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
and al, 0xf8
add eax, 7
cmp eax, ecx
jl 0x4a9e62
mov eax, ecx
mov ecx, dword [esp + 0x24]
inc eax
imul eax, dword [esp + 0x20]
imul ecx, dword [esp + 0x14]
lea edx, [esi + 0x48]
add eax, 5
mov ebx, edx
add ecx, 8
mov edx, dword [edx]
mov edi, dword [ebx]
add eax, edx
mov edx, dword [esi + 0x50]
mov dword [esp + 0x28], edi
mov ebp, dword [ebx + 4]
cmp edx, eax
mov dword [esp + 0x2c], ebp
mov ebp, dword [ebx + 8]
mov dword [esp + 0x30], ebp
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x34], ebx
jle 0x4a9ea4
mov eax, edx
mov edx, dword [esi + 0x4c]
mov ebx, dword [esi + 0x54]
add ecx, edx
mov dword [esp + 0x30], eax
cmp ebx, ecx
jle 0x4a9eb6
mov ecx, ebx
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x34], ecx
cmp eax, ebp
jle 0x4a9edb
mov edx, ebp
mov dword [esp + 0x30], ebp
sub edx, eax
mov eax, 0
add edi, edx
sets al
dec eax
and eax, edi
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x44]
cmp ecx, eax
jle 0x4a9f00
mov edx, eax
mov dword [esp + 0x34], eax
sub edx, ecx
mov ecx, dword [esp + 0x2c]
add ecx, edx
mov eax, 0
sets al
dec eax
and eax, ecx
mov dword [esp + 0x2c], eax
lea ecx, [esp + 0x48]
lea edx, [esp + 0x28]
push ecx
push edx
call dword [sym.imp.USER32.dll_EqualRect]
test eax, eax
jne 0x4a9f35
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
sub ecx, eax
push 1
push ecx
mov ecx, dword [esp + 0x30]
sub edx, ecx
push edx
push eax
push ecx
mov ecx, esi
call fcn.00513d1a
lea ecx, [esp + 0x1c]
mov byte [esp + 0x74], 0
call fcn.0050f8b6
lea ecx, [esp + 0x58]
mov dword [esp + 0x74], 0xffffffff
call fcn.0051649a
mov ecx, dword [esp + 0x6c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x68
ret