Function at 0x40e93c
Capabilities:
Check os version

Disassembly:
push ebx
push esi
push edi
mov ebx, 0x577e20
mov esi, 0x55d06c
push 0xa
push ebx
call fcn.0042e3f0
mov byte [ebx], 0x76
mov byte [ebx + 1], 0x36
mov byte [ebx + 2], 0x2e
mov byte [ebx + 3], 0x30
mov byte [ebx + 4], 0x32
push 0x202
push ebx
call fcn.0042e5e5
test eax, eax
jne 0x40e97a
xor eax, eax
jmp 0x40ece2
xor edx, edx
mov dword [0x55cfe0], edx
xor ecx, ecx
mov dword [0x55cfe4], ecx
xor eax, eax
mov dword [0x55cfe8], eax
xor edx, edx
mov dword [0x55cfec], edx
xor ecx, ecx
mov dword [0x55cff0], ecx
xor eax, eax
mov dword [0x55cff4], eax
xor edx, edx
mov dword [0x55cff8], edx
xor ecx, ecx
mov dword [0x55cffc], ecx
push 0x64
push 0x5771e4
call fcn.0042e3f0
push 0x104
push 0x57a738
call fcn.0042e3f0
push 0x104
push 0x57bc30
call fcn.0042e3f0
push 0x104
push 0x57bd34
call fcn.0042e3f0
push 0x104
push 0x57bfb8
call fcn.0042e3f0
push 0x104
push 0x57c0bc
call fcn.0042e3f0
push 0x104
push 0x57c1c0
call fcn.0042e3f0
push 0x64
push 0x57c940
call fcn.0042e3f0
mov word [0x55f590], 0
push 0x64
push 0x57c9a4
call fcn.0042e3f0
push 0x64
push 0x57c2c4
call fcn.0042e3f0
push 0x104
push 0x57d978
call fcn.0042e3f0
push 0x104
push 0x57da7c
call fcn.0042e3f0
push 0x64
push 0x57e01b
call fcn.0042e3f0
push 0x64
push 0x57e07f
call fcn.0042e3f0
push 0x64
push 0x57e0e4
call fcn.0042e3f0
push 0x64
push 0x57e5c8
call fcn.0042e3f0
push 0x64
push 0x57e690
call fcn.0042e3f0
push 0x64
push 0x57e6f4
call fcn.0042e3f0
push 0x3e7
push 0x57f5c0
call fcn.0042e3f0
push 0x64
push 0x57fb38
call fcn.0042e3f0
push 0x32
push 0x57fb9c
call fcn.0042e3f0
push 0x104
push 0x57fd38
call fcn.0042e3f0
push 0x104
push 0x57fc34
call fcn.0042e3f0
push 0x64
push 0x580de0
call fcn.0042e3f0
push 0x64
push 0x581644
call fcn.0042e3f0
push 0x64
push 0x581f30
call fcn.0042e3f0
push 0x104
push 0x581f94
call fcn.0042e3f0
push 0x64
push 0x58465c
call fcn.0042e3f0
push 0x64
push 0x586390
call fcn.0042e3f0
push 0x104
push 0x587658
call fcn.0042e3f0
push 0x104
push 0x58775c
call fcn.0042e3f0
push 0x64
push 0x585c44
call fcn.0042e3f0
push 0x3e7
push 0x585e28
call fcn.0042e3f0
push 0x180
push 0x58695b
call fcn.0042e3f0
push 0x180
push 0x586adb
call fcn.0042e3f0
push 0x32
push 0x57e148
call fcn.0042e3f0
push esi
mov edi, 0x57e148
mov eax, edi
movsw word es:[edi], word [esi]
pop esi
push 0x64
push 0x57db80
call fcn.0042e3f0
push esi
add esi, 3
mov edi, 0x57db80
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
push 0x180
push 0x57be38
call fcn.0042e3f0
push esi
add esi, 9
mov edi, 0x57be38
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
push 0x180
push 0x587a6d
call fcn.0042e3f0
push esi
add esi, 0x13
mov edi, 0x587a6d
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
lea edx, [esi + 0x1d]
push edx
push 0xff
call fcn.00553c50
add esp, 8
push 0x431152
push 8
call fcn.005591ec
add esp, 8
call fcn.004f145c
push 0
call fcn.0055aa70
pop ecx
push eax
call fcn.00555400
pop ecx
call fcn.00510d98
call sub.KERNEL32.dll_GetVersion
cmp al, 5
jb 0x40ec51
mov dword [0x55cfd0], 1
call fcn.0042e52c
mov dword [0x55d000], eax
mov dword [0x55d004], edx
push 0
call fcn.004ff0ac
push 0
call fcn.00426b96
push 0
call fcn.0051b4d5
push 0
call fcn.00413e1c
push 0
call fcn.0055aa70
pop ecx
mov dword [0x569ac8], eax
lea ecx, [esi + 0x20]
push ecx
call fcn.00558890
pop ecx
mov dword [0x55e748], eax
mov eax, dword [0x55e748]
test eax, eax
je 0x40ecbc
lea edx, [esi + 0x29]
push edx
push eax
call fcn.0054c494
add esp, 8
test eax, eax
je 0x40ecbc
xor ecx, ecx
mov dword [0x55e748], ecx
call fcn.004ac6ac
call fcn.004ac773
push 0
call fcn.00411f68
mov ebx, eax
mov dword [0x55d264], ebx
test ebx, ebx
jne 0x40ecdd
xor eax, eax
jmp 0x40ece2
mov eax, 1
pop edi
pop esi
pop ebx
ret