Function at 0x43c78c
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x434
mov eax, dword [0x5cd9c4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
lea eax, [ebp - 0x320]
mov dword [ebp - 0x320], 0x114
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
xor edx, edx
xor ebx, ebx
inc ebx
mov dword [0x5e6c5c], edx
cmp dword [ebp - 0x310], 2
mov dword [0x5e6c68], edx
mov dword [0x5e6c60], edx
mov dword [0x5e6c64], edx
mov dword [0x5e6c6c], edx
mov dword [0x5e6c70], edx
mov dword [0x5e6c78], edx
mov dword [0x5e6c54], edx
mov dword [0x5e6c84], edx
mov dword [0x5e6c80], edx
mov dword [0x5e6c88], edx
mov dword [0x5e6c8c], edx
mov dword [0x5e6c90], edx
mov dword [0x5e6c94], edx
mov dword [0x5e6c7c], edx
jne 0x43c980
cmp dword [ebp - 0x31c], 5
jne 0x43c859
mov eax, dword [ebp - 0x318]
test eax, eax
jne 0x43c841
mov dword [0x5e6c68], ebx
jmp 0x43c990
cmp eax, ebx
je 0x43c84e
cmp eax, 2
jne 0x43c990
mov dword [0x5e6c60], ebx
jmp 0x43c990
cmp dword [ebp - 0x31c], 6
jne 0x43c958
mov ecx, dword [ebp - 0x318]
cmp ecx, 4
ja 0x43c990
mov eax, dword [0x5e6c6c]
cmp ecx, ebx
mov dword [0x5e6c54], ebx
cmove eax, ebx
mov dword [0x5e6c60], ebx
mov dword [0x5e6c64], ebx
mov dword [0x5e6c6c], eax
cmp ecx, 2
jne 0x43c8e5
push str.RtlGetVersion
push str.ntdll.dll
mov dword [0x5e6c6c], ebx
mov dword [0x5e6c70], ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x43c8df
lea ecx, [ebp - 0x434]
push ecx
call eax
mov eax, dword [0x5e6c74]
cmp dword [ebp - 0x42c], 3
cmove eax, ebx
mov dword [0x5e6c74], eax
mov ecx, dword [ebp - 0x318]
cmp ecx, 3
jne 0x43c8fc
mov dword [0x5e6c6c], ebx
mov dword [0x5e6c70], ebx
mov dword [0x5e6c74], ebx
cmp ecx, 4
jne 0x43c919
mov dword [0x5e6c6c], ebx
mov dword [0x5e6c70], ebx
mov dword [0x5e6c74], ebx
mov dword [0x5e6c78], ebx
cmp ecx, ebx
jbe 0x43c990
push str.RtlGetVersion
push str.ntdll.dll
mov dword [0x5e6c6c], ebx
mov dword [0x5e6c70], ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x43c990
lea ecx, [ebp - 0x434]
push ecx
call eax
cmp dword [ebp - 0x430], 0xa
jne 0x43c990
jmp 0x43c978
jbe 0x43c990
mov dword [0x5e6c60], ebx
mov dword [0x5e6c64], ebx
mov dword [0x5e6c6c], ebx
mov dword [0x5e6c70], ebx
mov dword [0x5e6c74], ebx
mov dword [0x5e6c78], ebx
jmp 0x43c990
cmp dword [ebp - 0x310], ebx
mov eax, edx
cmove eax, ebx
mov dword [0x5e6c5c], eax
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.00520800
add esp, 0xc
lea eax, [ebp - 0x20c]
cmp dword [0x5e6c6c], 0
push 0x103
push eax
je 0x43c9cb
call fcn.0043c711
push eax
call fcn.00431c6a
add esp, 0xc
jmp 0x43c9d2
call fcn.0043c73e
pop ecx
pop ecx
mov eax, dword [ebp - 0x20c]
push 0x37
pop ecx
cmp cx, ax
jne 0x43c9e8
mov dword [0x5e6c80], ebx
jmp 0x43ca48
push 0x36
pop ecx
cmp cx, ax
jne 0x43c9f8
mov dword [0x5e6c84], ebx
jmp 0x43ca48
push 0x38
pop ecx
cmp cx, ax
jne 0x43ca08
mov dword [0x5e6c88], ebx
jmp 0x43ca48
push 0x39
pop ecx
cmp cx, ax
jne 0x43ca18
mov dword [0x5e6c8c], ebx
jmp 0x43ca48
push 0x31
pop ecx
cmp cx, ax
jne 0x43ca48
push 0x30
pop eax
cmp ax, word [ebp - 0x20a]
jne 0x43ca34
mov dword [0x5e6c90], ebx
jmp 0x43ca48
mov eax, dword [0x5e6c94]
cmp cx, word [ebp - 0x20a]
cmove eax, ebx
mov dword [0x5e6c94], eax
call fcn.0043ca5f
mov ecx, dword [ebp - 4]
xor ecx, ebp
mov dword [0x5e6c7c], eax
pop ebx
call fcn.0051d360
leave
ret