Function at 0x277ecbf0
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xec
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
lea edi, [ebp - 0x10]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x10]
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp + 8]
test byte [edi + 8], 0x20
je 0x277ecd32
mov esi, dword [ebp - 0x20]
sub esi, dword [ebp - 0x18]
add esi, dword [ebp - 8]
mov dword [ebp - 0x10], esi
mov ebx, dword [ebp - 0x14]
lea eax, [ebp - 0xec]
sub ebx, dword [ebp - 0x1c]
push eax
mov dword [ebp - 0xec], 0x94
add ebx, dword [ebp - 0xc]
mov dword [ebp - 4], ebx
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp dword [ebp - 0xdc], 2
jne 0x277ecc5e
cmp dword [ebp - 0xe8], 5
jae 0x277ecc87
cmp dword [ebp - 0xdc], 1
jne 0x277ecd46
cmp dword [ebp - 0xe8], 4
ja 0x277ecc87
jne 0x277ecd46
cmp dword [ebp - 0xe4], 1
jb 0x277ecd46
push 2
push dword [edi]
call fcn.277e20f8
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x58], 0x28
push ecx
push eax
call fcn.277e2163
push 0xffffffffffffffec
push dword [edi]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test al, 8
lea esi, [ebp - 0x54]
jne 0x277eccb5
lea esi, [ebp - 0x44]
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
mov ecx, dword [ebp - 0x18]
cmp dword [ebp - 8], ecx
jle 0x277eccd7
mov eax, dword [ebp - 8]
sub eax, ecx
sub esi, eax
sub dword [ebp - 8], eax
mov dword [ebp - 0x10], esi
mov eax, dword [ebp - 0x20]
cmp esi, eax
jge 0x277ecce8
sub eax, esi
add esi, eax
add dword [ebp - 8], eax
mov dword [ebp - 0x10], esi
cmp ebx, dword [ebp - 0x14]
jle 0x277ecd21
lea esi, [edi + 0xc0]
lea edi, [ebp - 0x30]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub ebx, dword [ebp - 0xc]
lea eax, [ebp - 0x30]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp + 8]
mov esi, dword [sym.imp.USER32.dll_ClientToScreen]
push eax
push dword [edi]
call esi
lea eax, [ebp - 0x28]
push eax
push dword [edi]
call esi
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 4], eax
sub eax, ebx
mov dword [ebp - 0xc], eax
mov edi, dword [ebp + 0xc]
lea esi, [ebp - 0x10]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
leave
ret 0xc
mov eax, dword [ebp - 0x18]
mov esi, dword [ebp - 0x10]
sub eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
jmp 0x277ecc29
push 0xffffffffffffffec
push dword [edi]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test al, 8
je 0x277ecd74
xor eax, eax
push eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
call fcn.277b3383
push 1
mov dword [ebp - 0x18], eax
call fcn.277b3383
mov dword [ebp - 0x14], eax
jmp 0x277eccc2
xor eax, eax
lea ecx, [ebp - 0x20]
push eax
push ecx
push eax
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
jmp 0x277eccc2