Function at 0x241e7b0
Capabilities:
Check os version
Create thread

Disassembly:
mov eax, 0x14d0
call fcn.024adb70
push ebx
push ebp
mov ebp, dword [esp + 0x14dc]
push esi
push edi
xor eax, eax
mov ecx, 0x24
lea edi, [esp + 0x20]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x1c]
push eax
mov dword [0x24e27c4], ebp
mov dword [esp + 0x20], 0x94
call dword [sym.imp.kernel32.dll_GetVersionExA]
test eax, eax
je 0x241ecd7
xor ebx, ebx
lea ecx, [esp + 0xb0]
mov dword [0x24e27cc], ebx
call fcn.0245db00
push 2
lea ecx, [esp + 0xb4]
call fcn.0245de20
test eax, eax
je 0x241e846
mov ecx, dword [0x24e27c4]
mov edx, dword [esp + 0x1418]
mov eax, dword [esp + 0x141c]
push 0x24da868
push 0x9c40
push ecx
push edx
push eax
call fcn.02430a60
mov dword [0x24e27cc], eax
jmp 0x241e84b
mov eax, dword [0x24e27cc]
cmp eax, ebx
je 0x241e856
mov dword [0x24e27c8], eax
jmp 0x241e862
mov ecx, dword [0x24e27c4]
mov dword [0x24e27c8], ecx
lea ecx, [esp + 0xb0]
call fcn.0245dcd0
lea edx, [esp + 0x10]
xor ecx, ecx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
call fcn.02480df0
test eax, eax
jne 0x241e89a
mov eax, dword [esp + 0x14]
cmp eax, ebx
mov dword [esp + 0x10], ebx
je 0x241ecd7
jmp 0x241ecce
mov ecx, dword [0x24e27c4]
mov edx, 0x95c95ebc
call fcn.02431ae0
test eax, eax
je 0x241ecac
mov edx, dword [esp + 0x14]
mov ecx, dword [0x24e27c4]
push 0xd3f043da
call fcn.02431f10
test eax, eax
je 0x241ecac
mov eax, dword [esp + 0x14]
cmp eax, ebx
mov dword [esp + 0x10], ebx
je 0x241e8e3
push eax
call fcn.024ad03a
add esp, 4
xor edx, edx
mov ecx, 0x24da930
call fcn.0247cee0
test eax, eax
jne 0x241e917
push 0x2030
push 0xa02f
push 0xa09f
push ebx
call fcn.0241c630
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10
push 0x70
call fcn.024adc5e
add esp, 4
cmp eax, ebx
je 0x241e932
mov ecx, eax
call fcn.0240a910
mov esi, eax
cmp esi, ebx
jne 0x241e956
push 0x2030
push 0xa02f
push 0xa02f
push ebx
call fcn.0241c630
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10
mov ecx, esi
call fcn.0240a990
test eax, eax
jne 0x241e96b
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
jmp 0x241e932
mov edi, dword [0x24e2718]
cmp edi, ebx
je 0x241e995
lea eax, [edi + 4]
push eax
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jne 0x241e98f
cmp edi, ebx
je 0x241e98f
mov edx, dword [edi]
push 1
mov ecx, edi
call dword [edx]
mov dword [0x24e2718], ebx
lea eax, [esi + 4]
push eax
call dword [sym.imp.kernel32.dll_InterlockedIncrement]
cmp dword [0x24e2760], ebx
mov dword [0x24e2718], esi
jne 0x241e932
push 0x400
mov dword [0x24e2764], 0x100
call fcn.024adc5e
mov edi, eax
add esp, 4
cmp edi, ebx
mov dword [0x24e2760], edi
je 0x241e932
mov ecx, dword [0x24e2764]
xor eax, eax
rep stosd dword es:[edi], eax
mov edx, dword [0x24e2764]
dec edx
mov ecx, 0x24e276c
mov dword [0x24e2764], edx
mov dword [0x24e2768], ebx
call fcn.024870d0
test eax, eax
je 0x241e932
mov ecx, 0x24e26d0
call fcn.0245d680
test eax, eax
je 0x241e932
mov ecx, 0x24e2720
call fcn.0247b6d0
test eax, eax
je 0x241e932
mov ecx, dword [esp + 0x2c]
cmp ecx, 1
mov edx, dword [esp + 0x20]
jne 0x241ea46
cmp edx, 4
jne 0x241ea46
cmp dword [esp + 0x24], ebx
jne 0x241ea46
mov eax, 1
jmp 0x241ea48
xor eax, eax
mov dword [0x24e27d0], eax
cmp dword [0x24e27d0], ebx
je 0x241ea7f
mov ecx, 0x24e27a0
call fcn.024870d0
test eax, eax
jne 0x241ea77
push 0x2030
push 0xa02f
push 0xa040
jmp 0x241e941
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
cmp ecx, 2
jne 0x241ead9
cmp edx, 5
jae 0x241eaea
push 0xc7
push ebp
call dword [sym.imp.user32.dll_LoadCursorA]
mov ecx, dword [0x24e27c8]
mov edx, eax
call fcn.0248fda0
mov ecx, dword [0x24e27c8]
call fcn.024835d0
push ebx
call fcn.024ae01f
push eax
call fcn.024ae012
add esp, 8
call fcn.02489cc0
test eax, eax
jne 0x241eaf2
push 0x2030
push 0xa02f
push 0xa0a0
jmp 0x241e941
cmp ecx, 1
jne 0x241ea89
cmp edx, 4
jne 0x241ea89
cmp dword [esp + 0x24], 0xa
jb 0x241ea89
push 0x7f89
push ebx
jmp 0x241ea8f
call fcn.02486f10
call fcn.02486b70
test eax, eax
jne 0x241eb29
push 0x2030
push 0xa02f
push 0xa02f
push ebx
call fcn.0241c630
call fcn.02489d10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10
call fcn.02489e90
test eax, eax
jne 0x241eb60
push 0x2030
push 0xa02f
push 0xa02f
push ebx
call fcn.0241c630
call fcn.02486c70
call fcn.02489d10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10
call fcn.02486ce0
test eax, eax
jne 0x241eb9c
push 0x2030
push 0xa02f
push 0xa02f
push ebx
call fcn.0241c630
call fcn.02489eb0
call fcn.02486c70
call fcn.02489d10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
cmp eax, ebx
je 0x241ebe4
cmp eax, 1
je 0x241ebe4
push 0x2030
push 0xa02f
push 0xa02f
push ebx
call fcn.0241c630
call fcn.02486dc0
call fcn.02489eb0
call fcn.02486c70
call fcn.02489d10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10
lea ecx, [esp + 0x18]
push ecx
push ebx
push ebx
push 0x241ecf0
push ebx
push ebx
mov dword [esp + 0x30], ebx
call fcn.024adeaf
mov esi, eax
add esp, 0x18
cmp esi, ebx
jne 0x241ec42
push 0x2030
push 0xa02f
push 0xa02f
push ebx
call fcn.0241c630
call dword [sym.imp.ole32.dll_CoUninitialize]
call fcn.02486dc0
call fcn.02489eb0
call fcn.02486c70
call fcn.02489d10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10
call fcn.0241f2d0
call fcn.0241ed60
call fcn.02458020
test eax, eax
je 0x241ec70
mov edi, dword [sym.imp.kernel32.dll_Sleep]
call fcn.0241ed60
push 0xc8
call edi
call fcn.02458020
test eax, eax
jne 0x241ec5b
push 0xffffffffffffffff
push esi
call dword [sym.imp.kernel32.dll_WaitForSingleObject]
push esi
call dword [sym.imp.kernel32.dll_CloseHandle]
call dword [sym.imp.ole32.dll_CoUninitialize]
call fcn.02486dc0
call fcn.02489eb0
call fcn.02486c70
call fcn.02489d10
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x14d0
ret 0x10
push 0x2030
push 0x24dacf0
push 0x24dacd0
push ebx
call dword [sym.imp.user32.dll_MessageBoxA]
mov eax, dword [esp + 0x14]
cmp eax, ebx
mov dword [esp + 0x10], ebx
je 0x241ecd7
push eax
call fcn.024ad03a
add esp, 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14d0
ret 0x10