Function at 0x100547f0
Capabilities:
Check os version
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffebc
push ebx
lea ebx, [ebp - 0x144]
cmp dword [0x100a908c], 0
je 0x10054816
mov eax, dword [0x100a908c]
mov dword [ebp - 4], eax
jmp 0x10054c11
xor eax, eax
mov dword [ebp - 4], eax
xor edx, edx
push ebp
push 0x10054c0a
push dword fs:[edx]
mov dword fs:[edx], esp
mov dword [ebx], 0x11c
push ebx
call sub.kernel32.dll_GetVersionExW
test eax, eax
jne 0x10054853
mov dword [ebx], 0x114
push ebx
call sub.kernel32.dll_GetVersionExW
test eax, eax
jne 0x10054853
call fcn.10004808
jmp 0x10054c11
cmp dword [ebx + 0x10], 2
je 0x10054863
call fcn.10004808
jmp 0x10054c11
lea eax, [ebp - 0x28]
xor ecx, ecx
mov edx, 0x24
call fcn.10003630
push 0x10054c1c
push 0x10054c44
call sub.kernel32.dll_GetModuleHandleW_1
push eax
call fcn.100085d0
test eax, eax
je 0x10054893
lea edx, [ebp - 0x28]
push edx
call eax
jmp 0x1005489c
lea eax, [ebp - 0x28]
push eax
call sub.kernel32.dll_GetSystemInfo_1
cmp dword [ebx + 4], 5
jne 0x100548b1
cmp dword [ebx + 8], 1
jne 0x100548b1
cmp byte [ebx + 0x11a], 1
je 0x100548c6
cmp dword [ebx + 4], 5
jne 0x10054905
cmp dword [ebx + 8], 2
jne 0x10054905
cmp byte [ebx + 0x11a], 1
jne 0x10054905
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x100548e1
sub ax, 5
je 0x100548f9
sub ax, 3
je 0x100548ed
jmp 0x10054bf4
mov dword [ebp - 4], 1
jmp 0x10054bf4
mov dword [ebp - 4], 2
jmp 0x10054bf4
mov dword [ebp - 4], 4
jmp 0x10054bf4
cmp dword [ebx + 4], 6
jne 0x10054959
cmp dword [ebx + 8], 0
jne 0x10054959
cmp byte [ebx + 0x11a], 1
jne 0x10054959
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054935
sub ax, 5
je 0x1005494d
sub ax, 3
je 0x10054941
jmp 0x10054bf4
mov dword [ebp - 4], 8
jmp 0x10054bf4
mov dword [ebp - 4], 0x10
jmp 0x10054bf4
mov dword [ebp - 4], 0x20
jmp 0x10054bf4
cmp dword [ebx + 4], 6
jne 0x100549ad
cmp dword [ebx + 8], 1
jne 0x100549ad
cmp byte [ebx + 0x11a], 1
jne 0x100549ad
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054989
sub ax, 5
je 0x100549a1
sub ax, 3
je 0x10054995
jmp 0x10054bf4
mov dword [ebp - 4], 0x40
jmp 0x10054bf4
mov dword [ebp - 4], 0x80
jmp 0x10054bf4
mov dword [ebp - 4], pe_nt_image_headers32
jmp 0x10054bf4
cmp dword [ebx + 4], 6
jne 0x10054a01
cmp dword [ebx + 8], 2
jne 0x10054a01
cmp byte [ebx + 0x11a], 1
jne 0x10054a01
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x100549dd
sub ax, 5
je 0x100549f5
sub ax, 3
je 0x100549e9
jmp 0x10054bf4
mov dword [ebp - 4], 0x200
jmp 0x10054bf4
mov dword [ebp - 4], 0x400
jmp 0x10054bf4
mov dword [ebp - 4], 0x800
jmp 0x10054bf4
cmp dword [ebx + 4], 6
jne 0x10054a55
cmp dword [ebx + 8], 3
jne 0x10054a55
cmp byte [ebx + 0x11a], 1
jne 0x10054a55
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054a31
sub ax, 5
je 0x10054a49
sub ax, 3
je 0x10054a3d
jmp 0x10054bf4
mov dword [ebp - 4], 0x200000
jmp 0x10054bf4
mov dword [ebp - 4], 0x400000
jmp 0x10054bf4
mov dword [ebp - 4], 0x800000
jmp 0x10054bf4
cmp dword [ebx + 4], 6
jne 0x10054aa9
cmp dword [ebx + 8], 4
jne 0x10054aa9
cmp byte [ebx + 0x11a], 1
jne 0x10054aa9
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054a85
sub ax, 5
je 0x10054a9d
sub ax, 3
je 0x10054a91
jmp 0x10054bf4
mov dword [ebp - 4], 0x1000000
jmp 0x10054bf4
mov dword [ebp - 4], 0x2000000
jmp 0x10054bf4
mov dword [ebp - 4], 0x4000000
jmp 0x10054bf4
cmp dword [ebx + 4], 0xa
jne 0x10054afd
cmp dword [ebx + 8], 0
jne 0x10054afd
cmp byte [ebx + 0x11a], 1
jne 0x10054afd
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054ad9
sub ax, 5
je 0x10054af1
sub ax, 3
je 0x10054ae5
jmp 0x10054bf4
mov dword [ebp - 4], 0x1000000
jmp 0x10054bf4
mov dword [ebp - 4], 0x2000000
jmp 0x10054bf4
mov dword [ebp - 4], 0x4000000
jmp 0x10054bf4
cmp dword [ebx + 4], 5
jne 0x10054b51
cmp dword [ebx + 8], 2
jne 0x10054b51
cmp byte [ebx + 0x11a], 1
je 0x10054b51
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054b2d
sub ax, 5
je 0x10054b45
sub ax, 3
je 0x10054b39
jmp 0x10054bf4
mov dword [ebp - 4], 0x1000
jmp 0x10054bf4
mov dword [ebp - 4], 0x2000
jmp 0x10054bf4
mov dword [ebp - 4], 0x4000
jmp 0x10054bf4
cmp dword [ebx + 4], 6
jne 0x10054b66
cmp dword [ebx + 8], 0
jne 0x10054b66
cmp byte [ebx + 0x11a], 1
jne 0x10054b7b
cmp dword [ebx + 4], 6
jne 0x10054bae
cmp dword [ebx + 8], 1
jne 0x10054bae
cmp byte [ebx + 0x11a], 1
je 0x10054bae
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054b93
sub ax, 5
je 0x10054ba5
sub ax, 3
je 0x10054b9c
jmp 0x10054bf4
mov dword [ebp - 4], 0x8000
jmp 0x10054bf4
mov dword [ebp - 4], 0x10000
jmp 0x10054bf4
mov dword [ebp - 4], 0x20000
jmp 0x10054bf4
cmp dword [ebx + 4], 6
jne 0x10054bf4
cmp dword [ebx + 8], 2
jne 0x10054bf4
cmp byte [ebx + 0x11a], 1
je 0x10054bf4
movzx eax, word [ebp - 0x28]
sub ax, 1
jb 0x10054bdb
sub ax, 5
je 0x10054bed
sub ax, 3
je 0x10054be4
jmp 0x10054bf4
mov dword [ebp - 4], 0x40000
jmp 0x10054bf4
mov dword [ebp - 4], 0x80000
jmp 0x10054bf4
mov dword [ebp - 4], 0x100000
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x10054c11
mov eax, dword [ebp - 4]
mov dword [0x100a908c], eax
ret
mov eax, dword [ebp - 4]
pop ebx
mov esp, ebp
pop ebp
ret