Function at 0x401b3c
Capabilities:
Accept command line arguments
Check os version

Disassembly:
push ebp
lea ebp, [esp - 0xd4]
sub esp, 0x14c
mov eax, dword [0x45a90c]
xor eax, ebp
mov dword [ebp + 0xd0], eax
push ebx
push esi
push edi
mov edi, dword [ebp + 0xdc]
push 0x12345673
push 1
push str.choice.dat
mov dword [ebp - 0x6c], edi
mov dword [0x45c594], edi
call fcn.00403756
add esp, 0xc
mov dword [0x45bd60], eax
call fcn.004033d2
mov ecx, dword [0x45bd60]
xor ebx, ebx
mov dword [0x45bd64], ecx
cmp eax, ebx
jne 0x401fca
push 0x2710
push ecx
mov byte [ebp - 0x56], 1
mov byte [ebp - 0x55], 1
call fcn.00403c89
push 0x54534e49
mov dword [ebp - 0x64], eax
call fcn.0040117e
add esp, 0xc
test al, al
jne 0x401bc7
mov byte [ebp - 0x56], bl
push 0x4e4f4441
call fcn.0040117e
pop ecx
test al, al
jne 0x401bde
mov byte [ebp - 0x55], bl
jmp 0x401d70
mov esi, 0x11c
push esi
lea eax, [ebp - 0x54]
push ebx
push eax
call fcn.00432990
add esp, 0xc
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x54], esi
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [ebp - 0x44], 1
jbe 0x401d50
cmp dword [ebp - 0x44], 2
jne 0x401d50
cmp dword [ebp - 0x50], 5
jne 0x401c21
cmp dword [ebp - 0x4c], ebx
je 0x401d50
call fcn.0040154c
test eax, eax
jne 0x401c6a
push 0x6f
push dword [0x45bd64]
call fcn.00403c89
push 0x70
push dword [0x45bd64]
mov esi, eax
call fcn.00403c89
add esp, 0x10
push 0x10
push esi
mov edi, eax
push edi
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push edi
call fcn.00430bc7
push esi
call fcn.00430bc7
pop ecx
pop ecx
push ebx
call fcn.004328eb
push 0x7d1
push dword [0x45bd64]
call fcn.00403d4b
push 0xa
push str.marker
push eax
call fcn.0043258b
add esp, 0x14
test eax, eax
jne 0x401d70
lea eax, [ebp - 0x68]
push eax
push dword [0x45bd64]
call fcn.00403514
mov edi, eax
lea eax, [ebp - 0x70]
push eax
push edi
push 0x7d0
push dword [0x45bd64]
call fcn.004036a9
push edi
mov esi, eax
call fcn.00430bc7
add esp, 0x1c
call fcn.004033d2
test eax, eax
jne 0x401d6d
push dword [esi]
call fcn.004012c7
pop ecx
test al, al
jne 0x401d6d
push 0x6d
push dword [0x45bd64]
call fcn.00403c89
mov dword [ebp - 0x60], eax
push 0x6e
push dword [0x45bd64]
call fcn.00403c89
mov edi, eax
push edi
call fcn.0043243c
push dword [ebp - 0x64]
mov esi, eax
call fcn.0043243c
add esi, eax
lea eax, [esi + esi]
push eax
call fcn.00430ca4
push dword [ebp - 0x64]
mov dword [ebp - 0x5c], eax
push edi
push esi
push eax
call fcn.004323ee
push edi
call fcn.00430bc7
add esp, 0x30
push 0x10
push dword [ebp - 0x60]
push dword [ebp - 0x5c]
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push dword [ebp - 0x5c]
call fcn.00430bc7
push dword [ebp - 0x60]
jmp 0x401c5d
cmp byte [ebp - 0x56], bl
jne 0x401bd6
push 0x64
push dword [0x45bd64]
call fcn.00403c89
mov dword [ebp - 0x60], eax
push 0x6c
jmp 0x401cf2
mov edi, dword [ebp - 0x6c]
cmp byte [ebp - 0x56], bl
je 0x401d83
cmp byte [ebp - 0x55], bl
jne 0x401d8f
mov byte [0x45befc], 1
jmp 0x401d8f
cmp byte [ebp - 0x55], bl
je 0x401d8f
mov byte [0x45befd], 1
mov esi, dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push ebx
call esi
push eax
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call fcn.00420f7d
mov byte [0x45befe], 1
call esi
lea ecx, [ebp - 0x60]
push ecx
push eax
call fcn.004029ea
pop ecx
pop ecx
mov dword [ebp - 0x68], eax
cmp byte [ebp - 0x56], bl
je 0x401e12
cmp byte [ebp - 0x55], bl
je 0x401e51
cmp dword [ebp - 0x60], 1
je 0x401e03
cmp dword [ebp - 0x60], 2
je 0x401e03
cmp dword [ebp - 0x60], 3
jne 0x401dee
mov byte [0x45befc], 1
mov byte [0x45befd], bl
jmp 0x401e59
push ebx
push 0x40181a
push ebx
push 0xc8
push edi
call dword [sym.imp.USER32.dll_DialogBoxParamW]
jmp 0x401e51
mov byte [0x45befd], 1
mov byte [0x45befc], bl
jmp 0x401e51
cmp byte [ebp - 0x55], bl
jne 0x401e51
push 0x64
push dword [0x45bd64]
call fcn.00403c89
push 0x65
push dword [0x45bd64]
mov esi, eax
call fcn.00403c89
add esp, 0x10
push 0x10
push esi
mov edi, eax
push edi
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push edi
call fcn.00430bc7
push esi
call fcn.00430bc7
pop ecx
pop ecx
cmp byte [0x45befc], bl
je 0x401e5e
call fcn.00407635
cmp byte [0x45befd], bl
je 0x401fa7
push 0x20
mov esi, 0x3e8
push esi
push dword [0x45bd64]
call fcn.004010de
push 0x10
push esi
push dword [0x45bd64]
mov dword [ebp - 0x74], eax
call fcn.004010de
push 0x2711
push dword [0x45bd64]
mov dword [ebp - 0x6c], eax
call fcn.00403d4b
push 0x2712
push dword [0x45bd64]
mov edi, eax
call fcn.00403d4b
push 0x2710
push dword [0x45bd64]
mov dword [ebp - 0x70], eax
call fcn.00403d4b
push eax
mov dword [ebp - 0x78], eax
call fcn.00432500
push edi
mov esi, eax
call fcn.00432500
lea eax, [esi + eax + 2]
push eax
call fcn.00430ca4
mov dword [ebp - 0x5c], eax
call fcn.0040321a
push dword [0x45bd64]
call fcn.00403389
add esp, 0x40
push edi
push dword [ebp - 0x78]
push str._s__s
push dword [ebp - 0x5c]
call fcn.00432456
push dword [ebp - 0x68]
call fcn.0043243c
xor ecx, ecx
push 2
add eax, 0x14
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00420d53
push dword [0x45bef8]
mov esi, eax
lea eax, [ebp + 0xc8]
push eax
call fcn.00401000
add esp, 0x20
cmp word [ebp + 0xc8], bx
jne 0x401f53
push esi
call fcn.00420d5e
mov esi, dword [ebp - 0x68]
pop ecx
jmp 0x401f6c
push dword [ebp - 0x68]
lea eax, [ebp + 0xc8]
push eax
push str.language_s__s
push esi
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
push esi
push dword [ebp - 0x6c]
push dword [ebp - 0x74]
push dword [ebp - 0x5c]
call fcn.0040e83e
mov esi, dword [sym.imp.USER32.dll_DestroyIcon]
add esp, 0x10
push dword [ebp - 0x74]
call esi
push dword [ebp - 0x6c]
call esi
push dword [ebp - 0x70]
call fcn.00430bc7
push dword [ebp - 0x5c]
call fcn.00430bc7
push edi
call fcn.00430bc7
add esp, 0xc
push dword [ebp - 0x68]
call fcn.00430bc7
push dword [ebp - 0x64]
call fcn.00430bc7
push dword [0x45bd64]
call fcn.0040347f
add esp, 0xc
jmp 0x401c64
push 0x10
push str.ERROR___Essential_DAT_packet_not_found
push str.This_error_should_not_occur_under_normal_circumstances._nYour_software_package_may_be_damaged._nPlease_contact_Miray_Support_at_support_miray.de._nUse__basic_DAT_packet_missing__as_error_description.
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x401c64