Function at 0x494a00
Capabilities:
Accept command line arguments
Check os version
Query environment variable

Disassembly:
push 0xffffffffffffffff
push 0x4b047b
mov eax, dword fs:[0]
push eax
sub esp, 0xc28
mov eax, dword [0x4c03a0]
xor eax, esp
mov dword [esp + 0xc24], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4c03a0]
xor eax, esp
push eax
lea eax, [esp + 0xc3c]
mov dword fs:[0], eax
mov edi, dword [esp + 0xc4c]
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov esi, eax
movzx eax, word [esi]
xor bl, bl
test ax, ax
je 0x494a7c
test bl, bl
jne 0x494a65
movzx eax, ax
push eax
call fcn.004651a0
test al, al
jne 0x494a7c
cmp word [esi], 0x22
jne 0x494a70
test bl, bl
sete bl
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x494a54
movzx ecx, word [esi]
push ecx
call fcn.004651a0
test al, al
je 0x494aa1
lea esp, [esp]
movzx edx, word [esi + 2]
add esi, 2
push edx
call fcn.004651a0
test al, al
jne 0x494a90
push 0x4dbd08
mov dword [0x4dbd08], 0x94
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
push 0x8005
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
call fcn.00464b20
mov ecx, 0x4e2ef8
call fcn.0041c180
mov byte [0x4dbcae], 0
mov dword [0x4db880], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push 0
push 0
push 1
push 0
mov dword [0x4dc20c], eax
call dword [sym.imp.KERNEL32.dll_CreateEventA]
push str.WMUser_DisplayError
mov dword [0x4dc1a8], eax
call dword [sym.imp.USER32.dll_RegisterWindowMessageA]
push str.General
mov dword [0x4db88c], eax
call fcn.00456780
test al, al
lea eax, [esp + 0x438]
sete bl
push eax
mov byte [esp + 0x1b], bl
call fcn.0044e170
lea ecx, [esp + 0x438]
push ecx
call fcn.0044df70
xor eax, eax
mov edi, edi
mov cl, byte [esp + eax + 0x438]
mov byte [eax + 0x4db890], cl
inc eax
test cl, cl
jne 0x494b40
mov eax, 0x4db890
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x494b58
mov edx, dword [str.rar.log]
mov ecx, dword [0x4b1dc0]
mov dword [eax], edx
push 0
mov dword [eax + 4], ecx
push edi
mov ecx, 0x4c93d8
call fcn.0045bec0
push str.winrar.lng
mov ecx, 0x4c93b8
call fcn.0045bc70
push edi
call fcn.004938a0
test eax, eax
je 0x495251
lea ecx, [esp + 0x1c]
call fcn.00484860
mov dword [esp + 0xc44], 0
mov dword [0x4c93a4], edi
call fcn.0047d8b0
call fcn.0047b810
push str.CLSIDDDF7D820_8355_11CF_B357_444553540000
push 0x80000000
call fcn.00455f00
call fcn.00491110
call fcn.004912b0
push str.WinRAR_Busy
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push str.WinRarWindow
mov dword [0x4dc1c4], eax
call dword [sym.imp.USER32.dll_FindWindowA]
push 0
push edi
push 0
push 0
push 0x80000000
push 0x80000000
push 0x80000000
push 0x80000000
push 0x6cf0000
push 0x4b2e3c
push str.WinRarWindow
mov ebp, eax
push 0x10
mov dword [esp + 0x48], ebp
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x4dc210], eax
test eax, eax
je 0x49523d
push eax
mov ecx, 0x4c93b8
call fcn.0045a9c0
push 0
call fcn.00490920
call fcn.00490fb0
test bl, bl
je 0x494c6b
push 1
push 0
call fcn.0041f870
mov byte [esp + 0x16], 1
test al, al
je 0x494c70
mov byte [esp + 0x16], 0
push 0x110
push 0
push 0x4e28a8
call fcn.0049ebe0
add esp, 0xc
push esi
call fcn.0048fbf0
mov bl, al
test bl, bl
je 0x494c95
call fcn.0047b520
push 0x4e2ef8
mov ecx, 0x4dc448
call fcn.00416390
xor eax, eax
jmp 0x494cb0
mov cl, byte [eax + 0x4e75f4]
mov byte [eax + 0x4dbda8], cl
inc eax
test cl, cl
jne 0x494cb0
lea edx, [esp + 0x24]
xor eax, eax
push edx
push esi
mov byte [0x4e75f4], cl
mov dword [0x4e57c0], eax
mov dword [0x4dbca8], eax
call fcn.0048fd00
movzx eax, word [esp + 0x24]
push eax
call fcn.0049f4b6
add esp, 4
mov edi, eax
push edi
push str.AFUM
call fcn.0046df20
test eax, eax
jne 0x494d02
call fcn.00477200
push edi
push 0x4b5af4
call fcn.0046df20
test eax, eax
je 0x494d25
mov ecx, dword [0x4e81f8]
call fcn.004655e0
test bl, bl
je 0x494d25
call fcn.00482160
push esi
call fcn.004940c0
call fcn.004909d0
cmp byte [0x4e5391], 0
je 0x494d81
push 0x4e5391
call fcn.0044daf0
cmp eax, 0x4e5391
jne 0x494d6c
push 0x4e5391
call fcn.0044daf0
push 0x4db890
mov esi, eax
call fcn.0044daf0
mov cl, byte [esi]
mov byte [eax], cl
inc esi
inc eax
test cl, cl
jne 0x494d60
jmp 0x494d81
xor eax, eax
mov edi, edi
mov cl, byte [eax + 0x4e5391]
mov byte [eax + 0x4db890], cl
inc eax
test cl, cl
jne 0x494d70
mov ecx, dword [0x4dc210]
push 0
push 0
push 0x403
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [0x4dc210], 0
je 0x494f79
cmp byte [0x4e69c3], 0
jne 0x4951c9
xor bl, bl
cmp byte [0x4e75f4], bl
je 0x495126
push 0x4e79f4
push 0x4e75f4
call fcn.0042fd20
cmp eax, 0xffffffff
je 0x494dd9
test al, 0x10
je 0x494dd9
mov bl, 1
cmp byte [0x4e75f4], 0
je 0x49510c
test bl, bl
jne 0x495110
push 0
push str.ReuseWindow
push str.General
call fcn.00456940
test eax, eax
je 0x494f22
test ebp, ebp
je 0x494f22
push 0x400
lea edx, [esp + 0x3c]
push edx
call fcn.0047e340
lea eax, [esp + 0x38]
push eax
call fcn.0044df70
lea eax, [esp + 0x38]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x494e30
mov ecx, dword [str.Rar_]
mov dl, byte [0x4b5af0]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0x38]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x494e50
sub eax, edx
push eax
lea eax, [esp + 0x3c]
push eax
push 0x4e75f4
call fcn.004650a0
test eax, eax
je 0x494f22
mov ebp, dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
push str.RarArchiveName
push 0x400
push 0
push 0x8000004
push 0
push 0xffffffffffffffff
call ebp
mov ebx, dword [sym.imp.KERNEL32.dll_MapViewOfFile]
push 0x400
push 0
push 0
mov esi, eax
push 2
push esi
call ebx
mov edi, eax
push edi
push 0x4e75f4
call fcn.0042fda0
push edi
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push str.RarArchiveNameW
push 0x800
push 0
push 0x8000004
push 0
push 0xffffffffffffffff
call ebp
push 0x800
push 0
push 0
mov edi, eax
push 2
push edi
call ebx
mov ebp, eax
push ebp
push 0x4e79f4
call fcn.0042fe30
push ebp
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov ecx, dword [esp + 0x18]
push 0x7ae964f1
push 0xd489ac5e
push 0x401
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
setne bl
call esi
push edi
call esi
mov ebp, dword [esp + 0x18]
cmp byte [0x4e75f4], 0
je 0x494f35
mov ecx, 0x4e75f4
call fcn.00490e10
test bl, bl
jne 0x4950e9
push 0x4e79f4
push 0x4e75f4
mov ecx, 0x4dff38
call fcn.004430d0
test al, al
je 0x4950e9
cmp dword [0x4dbca4], 0
jne 0x494f79
cmp dword [0x4dbd9c], 0
je 0x4950d7
mov ecx, 0x4dff38
call fcn.00441d30
push ebp
push 0x10000
push 0x48cd10
call fcn.0049f708
mov edx, dword [0x4dc210]
add esp, 0xc
push edx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x494fab
test ebp, ebp
setne al
movzx ecx, al
push ecx
call fcn.00490c90
mov edx, dword [0x4dc210]
push edx
call dword [sym.imp.USER32.dll_UpdateWindow]
call fcn.00490a20
cmp byte [esp + 0x16], 0
je 0x494fee
cmp byte [esp + 0x17], 0
je 0x494fee
push str.Setup
call fcn.00456780
test al, al
jne 0x494fee
push 0x4b2c58
call fcn.0043ae40
test al, al
jne 0x494fee
push 6
call fcn.0041f660
push 0
push str.ExportedSettings
push 0x4b1914
call fcn.00456940
test eax, eax
je 0x495008
call fcn.0041f570
push 0
push str.WizardMode
push str.General
call fcn.00456940
test eax, eax
je 0x495042
mov eax, dword [0x4dc210]
push eax
call fcn.00499340
test al, al
je 0x495042
cmp dword [0x4dbd9c], 0
jne 0x495042
mov ecx, dword [0x4dc210]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
push 0
push 0
call fcn.004939d0
test al, al
jne 0x495042
mov ecx, 0x4dc214
call fcn.004955a0
call fcn.00486a90
mov edx, dword [0x4dc1a8]
push edx
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [0x4dbcae], 1
xor esi, esi
lea ebx, [ebx]
cmp dword [0x4db880], 0
jle 0x495096
push 0x64
call edi
dec esi
cmp esi, 0xc8
jl 0x495080
mov eax, dword [0x4dc1a8]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x4dbca0], 0
je 0x495220
mov dword [0x4dbca0], 0xffffffff
xor esi, esi
cmp dword [0x4dbca0], 0
je 0x49523d
push 0x64
call edi
inc esi
cmp esi, 0xa
jl 0x4950bb
jmp 0x49523d
mov edx, dword [0x4dc210]
push edx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x494f79
call fcn.00486c00
mov dword [esp + 0xc44], 0xffffffff
lea ecx, [esp + 0x1c]
call fcn.004848f0
mov eax, 1
jmp 0x495253
test bl, bl
je 0x495126
mov ecx, 0x4e75f4
call fcn.00490e10
push 0
push 0x4e75f4
jmp 0x4951a7
push 1
push str.RestoreFolder
push str.General
call fcn.00456940
push 0x400
push 0x4b1914
test eax, eax
je 0x495162
lea eax, [esp + 0x40]
push eax
push str.LastFolder
push str.General
call fcn.004568e0
push 0
lea ecx, [esp + 0x3c]
push ecx
jmp 0x4951a7
lea edx, [esp + 0x840]
push edx
push str.StartFolder
push str.Paths
call fcn.004568e0
push 0x400
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x840]
push ecx
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
cmp byte [esp + 0x38], 0
mov byte [esp + 0x437], 0
je 0x4951ac
push 0
lea edx, [esp + 0x3c]
push edx
call fcn.0047f4d0
push 0
push 0
mov ecx, 0x4dff38
call fcn.004413b0
mov ecx, 0x4dff28
call fcn.00406ff0
jmp 0x494f79
push 0x4e28a8
call fcn.00494660
call fcn.00486c00
cmp dword [0x4dbca8], 1
jne 0x494f79
push 0
push str.WinRarWindow
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
sete al
movzx ecx, al
push ecx
push 1
call fcn.0048a600
mov esi, dword [0x4c93ac]
mov dword [esp + 0xc44], 0xffffffff
lea ecx, [esp + 0x1c]
call fcn.004848f0
mov eax, esi
jmp 0x495253
push 0
push str.WinRarWindow
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
sete cl
movzx edx, cl
push edx
push 1
call fcn.0048a600
mov dword [esp + 0xc44], 0xffffffff
lea ecx, [esp + 0x1c]
call fcn.004848f0
xor eax, eax
mov ecx, dword [esp + 0xc3c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc24]
xor ecx, esp
call fcn.0049e626
add esp, 0xc34
ret 0x10