Function at 0x41cf90
Capabilities:
Create process on windows
Create thread

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
mov eax, 0xafa8
call fcn.0046ed50
sub esp, eax
mov eax, dword [esp + eax]
mov dword [ebp - 0xaf50], edx
mov dword [ebp - 0xaf54], eax
mov esi, eax
mov eax, dword [edx]
mov dword [0x4f24a0], eax
call fcn.00450a50
mov byte [ebp - 0xaf58], al
test al, al
je 0x41e070
dec esi
jle 0x41e562
movzx eax, byte [ebp - 0xaf58]
mov ebx, 1
xor esi, esi
mov byte [ebp - 0xaf64], 1
mov byte [ebp - 0xaf70], 0
mov byte [ebp - 0xaf74], 0
mov byte [ebp - 0xaf75], al
xor eax, eax
mov dword [ebp - 0xaf6c], eax
xor eax, eax
mov dword [ebp - 0xaf60], eax
lea eax, [ebp - 0xaec8]
mov dword [ebp - 0xaf5c], eax
lea esi, [esi]
mov eax, dword [ebp - 0xaf50]
lea eax, [eax + ebx*4]
mov edx, dword [eax]
mov edi, eax
movzx eax, word [edx]
and eax, 0xfffd
cmp eax, 0x2d
jne 0x41d090
mov dword [esp], edx
mov ecx, 0x4b2c52
mov dword [esp + 4], ecx
call sub.msvcrt.dll_wcscmp
test eax, eax
je 0x41d090
mov edi, dword [edi]
cmp word [edi], 0x2d
jne 0x41d062
cmp word [edi + 2], 0
je 0x41e6f5
lea eax, [edi + 2]
mov edx, 0x4b2c58
mov dword [ebp - 0xaf4c], eax
mov dword [esp + 4], edx
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
jne 0x41d0a0
add esi, 2
lea ebx, [esi + 1]
cmp dword [ebp - 0xaf54], ebx
jg 0x41d020
nop
mov eax, dword [ebp - 0xaf54]
jmp 0x41d0dc
mov eax, 0x4b2c72
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
je 0x41d081
mov eax, str.VERSION
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
jne 0x41df80
mov dword [ebp - 0xaf68], eax
mov byte [ebp - 0xaf58], 0
call dword [sym.imp.KERNEL32.dll_GetConsoleOutputCP]
mov ebx, 0x41eea0
xor esi, esi
mov edi, 0x41ccc0
mov dword [0x4f24bc], eax
mov dword [esp], 0x41cd90
call fcn.004014c0
mov dword [esp + 4], ebx
mov dword [esp], 2
call sub.msvcrt.dll_signal
mov eax, dword [ebp - 0xaf5c]
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0xaf60]
mov dword [esp + 8], edi
mov dword [esp], 0
mov dword [esp + 0xc], eax
xor eax, eax
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
sub esp, 0x18
test eax, eax
mov ebx, eax
je 0x41d175
mov dword [esp], eax
mov ecx, 2
mov dword [esp + 4], ecx
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
sub esp, 8
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [esp], 1
mov eax, dword [fcn.00482990]
mov dword [ebp - 0xaf84], eax
call eax
mov ebx, eax
mov eax, dword [ebp - 0xaf6c]
test eax, eax
je 0x41d350
mov dword [esp], eax
mov edx, str.wSourcemakenssi.cpp
mov dword [esp + 4], edx
call fcn.0044ebb0
mov dword [0x4f24c8], eax
test eax, eax
mov ebx, eax
je 0x41e1d0
mov dword [0x4f24c4], eax
mov ecx, dword [ebp - 0xaf60]
movzx eax, word [0x4f24c0]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
test ecx, ecx
mov edx, eax
je 0x41e060
movsx ax, byte [ebp - 0xaf64]
shl eax, 0x10
or edx, eax
mov eax, 1
mov dword [esp + 8], eax
mov eax, 0x8000
mov dword [esp + 0xc], edx
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0xaf60]
mov dword [esp], ecx
call esi
sub esp, 0x10
test eax, eax
je 0x41d3b0
mov edx, dword [0x4f24c8]
dec eax
mov esi, 0xffffffff
movzx eax, ax
mov word [0x4f24c0], ax
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], 0x4f24b0
call fcn.0044fbb0
mov byte [ebp - 0xaf76], al
sub esp, 0x10
test al, al
je 0x41e030
mov eax, dword [0x4f24c4]
cmp eax, dword [0x4f24c8]
je 0x41d289
mov dword [esp + 0xc], esi
movzx edx, word [0x4f24c0]
mov dword [esp + 4], eax
mov dword [esp], 0x4f24a4
mov dword [esp + 8], edx
call fcn.0044fbb0
sub esp, 0x10
test al, al
je 0x41e030
test ebx, ebx
je 0x41e32a
movzx eax, byte [ebp - 0xaf74]
mov dword [esp + 4], eax
movsx eax, byte [ebp - 0xaf70]
mov dword [esp], eax
mov esi, dword [ebp - 0xaf5c]
mov ecx, esi
call fcn.0040be10
mov eax, dword [ebp - 0xaf50]
mov ecx, esi
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
call fcn.004062e0
mov eax, dword [ebp - 0xaf60]
sub esp, 4
mov dword [ebp - 0xae94], eax
mov eax, dword [ebp - 0xaf68]
test eax, eax
je 0x41e300
cmp byte [ebp - 0xaf75], 1
je 0x41d2fb
cmp byte [ebp - 0xaf70], 0
je 0x41e148
cmp byte [ebp - 0xaf58], 0
je 0x41d3d0
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0xaf88], eax
cmp byte [ebp - 0xaea7], 0
je 0x41d328
cmp byte [ebp - 0xaf58], 0
jne 0x41e46f
mov esi, dword [ebp - 0xaf88]
test esi, esi
sete al
or bl, al
movzx ebx, bl
mov ecx, dword [ebp - 0xaf5c]
call fcn.0040b560
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [0x4f24c8], ebx
test ebx, ebx
je 0x41e1d0
mov eax, dword [ebp - 0xaf60]
test eax, eax
je 0x41d3b0
xor esi, esi
mov eax, 0x8000
mov dword [esp + 0xc], esi
mov edi, 2
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf60]
mov dword [esp], eax
call esi
sub esp, 0x10
test al, 1
jne 0x41d3a2
mov eax, dword [0x4f24c8]
mov dword [0x4f24c4], eax
movzx edx, word [0x4f24c0]
jmp 0x41d1db
movsx esi, byte [ebp - 0xaf64]
movzx eax, word [0x4f24c0]
mov edx, dword [0x4f24c8]
jmp 0x41d229
cmp dword [ebp - 0xaf68], 1
jle 0x41e7be
xor eax, eax
xor edx, edx
mov dword [ebp - 0xaf7c], eax
xor eax, eax
mov ecx, 1
mov dword [ebp - 0xaf8c], eax
xor eax, eax
mov dword [ebp - 0xaf80], eax
xor eax, eax
mov dword [ebp - 0xaf88], eax
mov dword [ebp - 0xaf90], edx
mov byte [ebp - 0xaf78], 0
mov byte [ebp - 0xaf75], 0
mov byte [ebp - 0xaf77], 1
mov dword [ebp - 0xaf4c], ecx
jmp 0x41da77
mov edx, dword [edi]
movzx eax, word [edx]
and eax, 0xfffd
cmp eax, 0x2d
je 0x41dc10
inc dword [ebp - 0xaf80]
mov ecx, 0x4b2ed0
mov dword [esp + 4], ecx
mov dword [esp], edx
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x41d46e
cmp byte [ebp - 0xaf58], 0
jne 0x41d46e
xor eax, eax
mov byte [0x4f24c2], al
cmp byte [ebp - 0xaf75], 0
jne 0x41d700
lea eax, [ebp - 0xaf18]
xor edi, edi
mov dword [ebp - 0xaf20], eax
xor eax, eax
mov word [ebp - 0xaf18], ax
lea eax, [ebp - 0xaf20]
mov dword [ebp - 0xaf1c], edi
mov dword [esp], str.NSISCONFDIR
mov dword [ebp - 0xaf60], eax
call dword [sym.imp.msvcrt.dll__wgetenv]
test eax, eax
mov ebx, eax
je 0x41ddd0
mov dword [esp], eax
call sub.msvcrt.dll_wcslen
lea ecx, [ebp - 0xaf20]
mov dword [ebp - 0xaf60], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xaf1c]
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.0049a440
sub esp, 0x10
mov dword [esp], 0x4b45f0
call sub.msvcrt.dll_wcslen
mov ebx, dword [ebp - 0xaf1c]
mov edx, 0x1fffffff
sub edx, ebx
cmp edx, eax
jb 0x41e71a
mov dword [esp + 4], eax
mov dword [esp], 0x4b45f0
mov ecx, dword [ebp - 0xaf60]
call fcn.0049c5c0
sub esp, 8
mov dword [esp], str.nsisconf.nsh
call sub.msvcrt.dll_wcslen
mov ecx, dword [ebp - 0xaf1c]
mov edx, 0x1fffffff
sub edx, ecx
cmp edx, eax
jb 0x41e76e
mov dword [esp + 4], eax
mov dword [esp], str.nsisconf.nsh
mov esi, dword [ebp - 0xaf60]
mov ecx, esi
call fcn.0049c5c0
mov eax, dword [ebp - 0xaf5c]
sub esp, 8
mov edx, esi
call fcn.0041cea0
test eax, eax
jne 0x41e3cf
mov dword [esp], str.APPDATA
call dword [sym.imp.msvcrt.dll__wgetenv]
lea ebx, [ebp - 0xaee8]
test eax, eax
mov dword [ebp - 0xaef0], ebx
mov esi, eax
je 0x41ded0
mov dword [esp], esi
call sub.msvcrt.dll_wcslen
add eax, eax
mov dword [ebp - 0xaf64], eax
mov edi, eax
sar edi, 1
cmp eax, 0xe
mov dword [ebp - 0xaf08], edi
ja 0x41dd90
mov eax, dword [ebp - 0xaef0]
lea ecx, [ebp - 0xaef0]
mov dword [ebp - 0xaf6c], ecx
cmp edi, 1
je 0x41dd80
test edi, edi
je 0x41d5f9
mov ecx, dword [ebp - 0xaf64]
mov edi, eax
cmp ecx, 8
jae 0x41dff8
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0xaef0]
mov edx, dword [ebp - 0xaf08]
mov dword [ebp - 0xaeec], edx
mov word [eax + edx*2], 0
mov dword [esp], 0x4b2c16
mov ecx, dword [ebp - 0xaf6c]
call fcn.0048ffc0
sub esp, 4
test eax, eax
je 0x41d6b3
mov dword [esp], 0x4b45f0
call sub.msvcrt.dll_wcslen
mov esi, dword [ebp - 0xaeec]
mov edx, 0x1fffffff
sub edx, esi
cmp edx, eax
jb 0x41e7a6
mov dword [esp + 4], eax
mov dword [esp], 0x4b45f0
mov ecx, dword [ebp - 0xaf6c]
call fcn.0049c5c0
sub esp, 8
mov dword [esp], str.nsisconf.nsh
call sub.msvcrt.dll_wcslen
mov ecx, dword [ebp - 0xaeec]
mov edx, 0x1fffffff
sub edx, ecx
cmp edx, eax
jb 0x41e7b2
mov dword [esp + 4], eax
mov dword [esp], str.nsisconf.nsh
mov esi, dword [ebp - 0xaf6c]
mov ecx, esi
call fcn.0049c5c0
mov eax, dword [ebp - 0xaf5c]
sub esp, 8
mov edx, esi
call fcn.0041cea0
test eax, eax
jne 0x41e3af
mov eax, dword [ebp - 0xaef0]
cmp eax, ebx
je 0x41d6d3
mov edx, dword [ebp - 0xaee8]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov eax, dword [ebp - 0xaf20]
lea ecx, [ebp - 0xaf18]
cmp eax, ecx
je 0x41d6f9
mov edx, dword [ebp - 0xaf18]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov byte [ebp - 0xaf75], 1
lea eax, [ebp - 0xaf30]
mov edx, 0x4b2ed0
mov dword [ebp - 0xaf38], eax
xor eax, eax
mov dword [ebp - 0xaf34], eax
xor eax, eax
mov word [ebp - 0xaf30], ax
xor eax, eax
mov dword [ebp - 0xaf40], eax
xor eax, eax
mov word [ebp - 0xaf3c], ax
mov dword [esp + 4], edx
mov eax, dword [ebp - 0xaf54]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x41d758
cmp byte [ebp - 0xaf58], 0
je 0x41dce8
mov eax, dword [ebp - 0xaf54]
mov ebx, dword [eax]
mov dword [esp], ebx
call sub.msvcrt.dll_wcslen
lea ecx, [ebp - 0xaf38]
mov dword [ebp - 0xaf64], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xaf34]
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.0049a440
sub esp, 0x10
mov eax, 0x4b2b6c
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf38]
mov dword [esp], eax
call fcn.0044ebb0
lea ecx, [ebp - 0xaf40]
mov ebx, 1
mov dword [ebp - 0xaf70], ecx
mov dword [esp + 8], ebx
mov esi, dword [ebp - 0xaf7c]
mov dword [esp], eax
mov dword [esp + 4], esi
call fcn.0044d270
sub esp, 0xc
test al, al
jne 0x41d857
mov dword [esp], str..nsi
call sub.msvcrt.dll_wcslen
mov ecx, dword [ebp - 0xaf34]
mov edx, 0x1fffffff
sub edx, ecx
cmp edx, eax
jb 0x41e756
mov dword [esp + 4], eax
mov dword [esp], str..nsi
mov ecx, dword [ebp - 0xaf64]
call fcn.0049c5c0
sub esp, 8
mov edi, 0x4b2b6c
mov dword [esp + 4], edi
mov eax, dword [ebp - 0xaf38]
mov dword [esp], eax
call fcn.0044ebb0
mov esi, 1
mov dword [esp + 8], esi
mov ecx, dword [ebp - 0xaf7c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov ecx, dword [ebp - 0xaf70]
call fcn.0044d270
sub esp, 0xc
test al, al
je 0x41e4d3
mov eax, dword [ebp - 0xaf64]
lea ebx, [ebp - 0xaf20]
mov dword [ebp - 0xaf60], ebx
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0044f100
lea eax, [ebp - 0xaf08]
mov dword [ebp - 0xaf74], eax
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.0044f590
mov dword [esp], str..exe
call sub.msvcrt.dll_wcslen
mov ecx, dword [ebp - 0xaf04]
mov edx, 0x1fffffff
sub edx, ecx
cmp edx, eax
jb 0x41e762
mov dword [esp + 4], eax
mov dword [esp], str..exe
mov ecx, dword [ebp - 0xaf74]
call fcn.0049c5c0
lea ebx, [ebp - 0xaee8]
sub esp, 8
mov esi, dword [eax + 4]
mov dword [ebp - 0xaef0], ebx
lea edx, [eax + 8]
mov ecx, dword [eax]
cmp ecx, edx
je 0x41dcc8
mov dword [ebp - 0xaef0], ecx
mov ecx, dword [eax + 8]
mov dword [ebp - 0xaee8], ecx
mov dword [ebp - 0xaeec], esi
mov dword [eax], edx
mov dword [eax + 4], 0
mov word [eax + 8], 0
lea eax, [ebp - 0xaef0]
mov dword [ebp - 0xaf6c], eax
mov dword [esp], eax
mov ecx, dword [ebp - 0xaf5c]
call fcn.00402c20
mov eax, dword [ebp - 0xaef0]
sub esp, 4
cmp eax, ebx
je 0x41d944
mov edx, dword [ebp - 0xaee8]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov eax, dword [ebp - 0xaf08]
lea esi, [ebp - 0xaf00]
cmp eax, esi
je 0x41d96a
mov edx, dword [ebp - 0xaf00]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov eax, dword [ebp - 0xaf20]
lea edx, [ebp - 0xaf18]
cmp eax, edx
je 0x41d990
mov edx, dword [ebp - 0xaf18]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
cmp byte [ebp - 0xaf77], 0
jne 0x41dc40
mov eax, dword [ebp - 0xaf38]
mov dword [esp], 0
mov dword [esp + 4], eax
mov esi, dword [ebp - 0xaf5c]
mov ecx, esi
call fcn.004031f0
lea ebx, [ebp - 0xaef0]
sub esp, 8
mov dword [esp + 4], ebx
movzx eax, word [ebp - 0xaf3c]
mov dword [esp], eax
call fcn.0044d160
mov dword [esp + 0xc], ebx
mov edi, str.Processing_script_file:___ls____ls__n
mov eax, dword [ebp - 0xaf38]
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [esp + 8], eax
call fcn.00403010
mov eax, dword [ebp - 0xaf38]
mov ecx, esi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf70]
mov dword [esp], eax
call fcn.00443820
sub esp, 8
cmp eax, 1
ja 0x41e37f
mov eax, dword [ebp - 0xaf40]
xor ecx, ecx
mov dword [ebp - 0xaf40], ecx
test eax, eax
je 0x41da36
mov dword [esp], eax
call sub.msvcrt.dll_fclose
mov esi, dword [ebp - 0xaf4c]
mov eax, dword [ebp - 0xaf38]
lea ecx, [esi + 1]
lea esi, [ebp - 0xaf30]
mov ebx, ecx
cmp eax, esi
je 0x41da67
mov edx, dword [ebp - 0xaf30]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov dword [ebp - 0xaf4c], ebx
mov esi, dword [ebp - 0xaf68]
cmp ebx, esi
jge 0x41dad4
mov eax, dword [ebp - 0xaf4c]
lea ebx, [eax*4]
mov eax, dword [ebp - 0xaf50]
lea edi, [eax + ebx]
mov eax, 0x4b2c52
mov dword [ebp - 0xaf54], edi
mov dword [esp + 4], eax
mov eax, dword [edi]
mov dword [esp], eax
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x41d430
movzx eax, byte [ebp - 0xaf76]
mov esi, dword [ebp - 0xaf68]
mov byte [ebp - 0xaf58], al
mov eax, dword [ebp - 0xaf4c]
inc eax
mov ebx, eax
mov dword [ebp - 0xaf4c], ebx
cmp ebx, esi
jl 0x41da77
mov esi, dword [ebp - 0xaf68]
cmp dword [ebp - 0xaf4c], esi
mov esi, dword [ebp - 0xaf80]
setl al
or esi, dword [ebp - 0xaf8c]
mov bl, al
je 0x41e33b
test al, al
jne 0x41e33b
cmp byte [ebp - 0xaea8], 0
jne 0x41dc06
cmp byte [ebp - 0xaea4], 0
je 0x41dbe6
mov ecx, str._nProcessed
mov dword [esp + 4], ecx
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov esi, dword [ebp - 0xaf80]
test esi, esi
je 0x41db67
mov edx, 0x4b2c18
cmp esi, 1
mov dword [esp + 8], esi
mov eax, 0x4b2c16
cmovne eax, edx
mov edx, str._d_file_ls_
mov dword [esp + 0xc], eax
mov dword [esp + 4], edx
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov esi, dword [ebp - 0xaf8c]
test esi, esi
je 0x41db9f
cmp esi, 1
mov eax, 0x4b2c16
mov dword [esp + 8], esi
mov edx, 0x4b2c18
cmovne eax, edx
mov dword [esp + 0xc], eax
mov eax, str._d_command_line_command_ls_
mov dword [esp + 4], eax
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov eax, 0x4b4846
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaec8]
mov dword [esp], eax
mov ecx, dword [ebp - 0xaf5c]
call fcn.004057e0
sub esp, 8
mov dword [esp + 8], eax
mov eax, str.writing_output___ls_:_n
mov dword [esp + 4], eax
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov ecx, dword [ebp - 0xaf5c]
call fcn.00410910
test eax, eax
jne 0x41e5b1
cmp byte [ebp - 0xaf78], 0
jne 0x41e497
xor ebx, ebx
jmp 0x41d338
mov dword [esp], edx
mov esi, 0x4b2ed0
mov dword [esp + 4], esi
call sub.msvcrt.dll_wcscmp
test eax, eax
sete al
or al, byte [ebp - 0xaf58]
je 0x41dee0
mov edx, dword [edi]
jmp 0x41d443
mov eax, dword [ebp - 0xaf64]
mov dword [esp + 4], eax
mov edi, dword [ebp - 0xaf6c]
mov dword [esp], edi
call fcn.0044f100
mov dword [esp + 4], edi
mov eax, dword [ebp - 0xaf74]
mov dword [esp], eax
call fcn.0044f310
mov eax, dword [ebp - 0xaef0]
cmp eax, ebx
je 0x41dc8a
mov edx, dword [ebp - 0xaee8]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov edx, dword [ebp - 0xaf04]
mov eax, dword [ebp - 0xaf08]
test edx, edx
jne 0x41df28
cmp eax, esi
je 0x41d99d
mov edx, dword [ebp - 0xaf00]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
jmp 0x41d99d
mov ecx, esi
inc ecx
je 0x41d8f2
add ecx, ecx
mov edi, ebx
mov esi, edx
rep movsb byte es:[edi], byte [esi]
mov esi, dword [eax + 4]
jmp 0x41d8f2
mov dword [esp], 0
lea eax, [ebp - 0xaf38]
mov dword [ebp - 0xaf64], eax
mov eax, dword [ebp - 0xaf84]
call eax
lea ecx, [ebp - 0xaf40]
xor edi, edi
mov dword [ebp - 0xaf70], ecx
mov dword [esp + 8], edi
mov esi, dword [ebp - 0xaf7c]
mov dword [esp], eax
lea eax, [ebp - 0xaf38]
mov dword [esp + 4], esi
mov dword [ebp - 0xaf64], eax
call fcn.0044d270
sub esp, 0xc
mov esi, str._stdin_
mov dword [esp], str._stdin_
call sub.msvcrt.dll_wcslen
lea ecx, [ebp - 0xaf38]
mov dword [ebp - 0xaf64], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xaf34]
mov dword [esp], 0
mov dword [esp + 4], eax
call fcn.0049a440
sub esp, 0x10
jmp 0x41d99d
movzx edx, word [esi]
mov word [eax], dx
jmp 0x41d5f9
lea eax, [ebp - 0xaef0]
mov dword [ebp - 0xaf6c], eax
mov ecx, eax
xor eax, eax
mov dword [esp + 4], eax
lea eax, [ebp - 0xaf08]
mov dword [esp], eax
call fcn.0049c730
mov dword [ebp - 0xaef0], eax
mov edx, dword [ebp - 0xaf08]
sub esp, 8
mov dword [ebp - 0xaee8], edx
jmp 0x41d5d3
mov eax, dword [ebp - 0xaf50]
lea esi, [ebp - 0xaf08]
mov dword [ebp - 0xaf74], esi
mov eax, dword [eax]
mov dword [esp], esi
mov dword [esp + 4], eax
lea eax, [ebp - 0xaf20]
mov dword [ebp - 0xaf60], eax
call fcn.0044f4d0
mov dword [esp + 4], esi
lea eax, [ebp - 0xaef0]
mov dword [esp], eax
call fcn.0044f310
mov eax, dword [ebp - 0xaef0]
lea ebx, [ebp - 0xaee8]
mov edi, dword [ebp - 0xaf20]
cmp eax, ebx
je 0x41e180
lea esi, [ebp - 0xaf18]
cmp edi, esi
je 0x41e1a8
mov dword [ebp - 0xaf20], eax
mov eax, dword [ebp - 0xaeec]
test edi, edi
mov edx, dword [ebp - 0xaf18]
mov dword [ebp - 0xaf1c], eax
mov eax, dword [ebp - 0xaee8]
mov dword [ebp - 0xaf18], eax
je 0x41de91
mov dword [ebp - 0xaef0], edi
mov dword [ebp - 0xaee8], edx
xor esi, esi
cmp edi, ebx
mov dword [ebp - 0xaeec], esi
mov word [edi], 0
je 0x41de91
mov eax, dword [ebp - 0xaee8]
mov dword [esp], edi
lea eax, [eax + eax + 2]
mov dword [esp + 4], eax
call fcn.004a2230
mov eax, dword [ebp - 0xaf08]
lea edx, [ebp - 0xaf00]
lea ecx, [ebp - 0xaf20]
mov dword [ebp - 0xaf60], ecx
cmp eax, edx
je 0x41d4f0
mov edx, dword [ebp - 0xaf00]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
jmp 0x41d4f0
mov esi, 0x4b2c16
jmp 0x41d59e
mov eax, dword [ebp - 0xaf54]
mov edx, 0x4b2ccc
mov esi, dword [sym.imp.msvcrt.dll__wcsicmp]
mov eax, dword [eax]
mov dword [ebp - 0xaf58], eax
lea edi, [eax + 2]
mov dword [esp + 4], edx
mov dword [esp], edi
call esi
test eax, eax
jne 0x41e298
mov byte [ebp - 0xaf58], 0
mov eax, dword [ebp - 0xaf4c]
inc eax
mov ebx, eax
jmp 0x41da67
mov dword [esp + 8], eax
mov eax, str.Changing_directory_to:___ls__n
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.00402fc0
mov eax, dword [ebp - 0xaf08]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wchdir]
test eax, eax
jne 0x41e208
mov eax, 0x4b2c12
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.00402fc0
mov eax, dword [ebp - 0xaf08]
jmp 0x41dc9e
mov eax, str.NOTIFYHWND
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
mov dword [ebp - 0xaf68], eax
test eax, eax
jne 0x41e090
add esi, 2
cmp dword [ebp - 0xaf54], esi
jle 0x41e1f0
mov eax, dword [ebp - 0xaf50]
mov eax, dword [eax + esi*4]
cmp word [eax], 0
je 0x41e1f0
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wtol]
mov dword [esp], eax
mov edi, eax
call dword [sym.imp.USER32.dll_IsWindow]
mov ecx, dword [ebp - 0xaf68]
sub esp, 4
test eax, eax
cmovne ecx, edi
mov dword [ebp - 0xaf60], ecx
jmp 0x41d084
test al, 1
jne 0x41e53f
test edi, 2
jne 0x41e54d
test edi, 4
je 0x41d5f1
mov eax, dword [esi]
add edi, 4
add esi, 4
sub ecx, 4
mov dword [edi - 4], eax
jmp 0x41d5f1
mov dword [esp], str.__StdIO_init_failed_
mov eax, 0x1a3
mov dword [esp + 8], eax
mov eax, 0x4b2cec
mov dword [esp + 4], eax
call dword [0x4aa7c4]
lea esp, [ebp - 0xc]
mov ebx, 1
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
movsx esi, byte [ebp - 0xaf64]
mov edx, ebx
jmp 0x41d229
mov dword [esp], 2
mov ebx, 0x4b2c1c
call dword [0x4aa7d0]
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.004509f0
jmp 0x41e04f
mov eax, str.OUTPUTCHARSET
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
je 0x41e0cc
mov eax, 0x4b2cbc
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
jne 0x41e3fe
lea eax, [esi + 2]
cmp dword [ebp - 0xaf54], eax
mov edi, eax
jle 0x41e1f0
mov ecx, dword [ebp - 0xaf50]
mov eax, dword [ecx + eax*4]
cmp word [eax], 0
je 0x41e1f0
mov ecx, dword [ebp - 0xaf5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0044cfc0
movzx edx, ax
cmp edx, 0xffff
je 0x41e1f0
cmp byte [ebp - 0xaec8], 1
mov word [0x4f24c0], ax
mov eax, dword [ebp - 0xaf54]
lea ebx, [esi + 3]
sbb ecx, ecx
or cl, 1
mov byte [ebp - 0xaf64], cl
cmp ebx, eax
jge 0x41d0dc
mov esi, edi
jmp 0x41d020
mov ebx, 0x4b2daa
mov esi, str.MakeNSIS__ls___Copyright_1999_2023_Contributors_nSee_the_file_COPYING_for_license_details._nCredits_can_be_found_in_the_Users_Manual._n_n
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x41d2fb
mov eax, dword [ebp - 0xaeec]
test eax, eax
jne 0x41e34f
mov edx, edi
mov edi, ebx
mov dword [ebp - 0xaf1c], eax
mov word [edx + eax*2], 0
jmp 0x41de6a
mov dword [ebp - 0xaf20], eax
mov eax, dword [ebp - 0xaeec]
mov dword [ebp - 0xaf1c], eax
mov eax, dword [ebp - 0xaee8]
mov dword [ebp - 0xaf18], eax
jmp 0x41de91
mov dword [esp], 1
xor ebx, ebx
mov eax, dword [ebp - 0xaf84]
call eax
mov dword [0x4f24c8], eax
jmp 0x41d35e
mov eax, dword [ebp - 0xaf54]
mov dword [ebp - 0xaf68], eax
jmp 0x41d0e9
mov eax, dword [ebp - 0xaf08]
mov dword [esp + 8], eax
mov eax, str.Error_changing_directory_to___ls__n
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.00403350
mov eax, dword [ebp - 0xaf08]
cmp eax, esi
je 0x41e249
mov edx, dword [ebp - 0xaf00]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov eax, dword [ebp - 0xaf40]
xor edx, edx
mov dword [ebp - 0xaf40], edx
test eax, eax
je 0x41e263
mov dword [esp], eax
call sub.msvcrt.dll_fclose
mov eax, dword [ebp - 0xaf38]
lea esi, [ebp - 0xaf30]
cmp eax, esi
je 0x41e289
mov edx, dword [ebp - 0xaf30]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov ebx, 1
jmp 0x41d338
mov dword [esp], edi
mov eax, str.SafePPO
mov dword [esp + 4], eax
call esi
test eax, eax
je 0x41df0d
mov dword [esp], edi
mov eax, 0x4b2ce4
mov dword [esp + 4], eax
call esi
test eax, eax
je 0x41df0d
mov dword [esp], edi
mov eax, 0x4b2ed4
mov dword [esp + 4], eax
call esi
test eax, eax
jne 0x41e610
mov byte [ebp - 0xaf58], 0
mov eax, dword [ebp - 0xaf4c]
mov byte [ebp - 0xaf77], 0
inc eax
mov ebx, eax
jmp 0x41da67
mov edi, 0x4b2daa
mov dword [esp + 4], edi
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
xor ebx, ebx
jmp 0x41d338
mov dword [esp], str.Error_opening_output_log_for_writing__Using_stdout._n
call fcn.00488ce0
jmp 0x41d291
mov eax, dword [ebp - 0xaf90]
test eax, eax
sete byte [ebp - 0xaf58]
jmp 0x41d312
cmp eax, 1
je 0x41e530
lea ecx, [eax + eax]
mov esi, ebx
cmp ecx, 8
jae 0x41e438
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0xaeec]
mov edx, dword [ebp - 0xaf20]
mov edi, dword [ebp - 0xaef0]
jmp 0x41e192
mov eax, dword [ebp - 0xaea0]
mov ebx, str.Error_in_script___ls__on_line__d____aborting_creation_process_n
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xaf38]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.00403350
jmp 0x41e249
mov eax, dword [ebp - 0xaef0]
cmp eax, ebx
je 0x41e3cf
mov edx, dword [ebp - 0xaee8]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
mov eax, dword [ebp - 0xaf20]
lea esi, [ebp - 0xaf18]
cmp eax, esi
je 0x41e289
mov edx, dword [ebp - 0xaf18]
mov dword [esp], eax
lea edx, [edx + edx + 2]
mov dword [esp + 4], edx
call fcn.004a2230
jmp 0x41e289
mov esi, 0x4b2cc4
mov dword [esp + 4], esi
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
jne 0x41e5cd
mov byte [ebp - 0xaf64], 0
mov ecx, 0x4b0
mov esi, ebx
mov word [0x4f24c0], cx
jmp 0x41d084
test edi, 1
jne 0x41e6b5
test edi, 2
jne 0x41e6a0
test edi, 4
je 0x41e366
mov eax, dword [esi]
add edi, 4
add esi, 4
sub ecx, 4
mov dword [edi - 4], eax
jmp 0x41e366
mov edi, str.Usage:_n__makensis___option__script.nsi_______...__n_nOptions:_n___CMDHELP__item__prints_out_help_for_item__or_lists_all_commands_n___HDRINFO_prints_information_about_what_options_makensis_was_compiled_with_n___LICENSE_prints_the_makensis_software_license_n___VERSION_prints_the_makensis_version_and_exits_n___Px_sets_the_compiler_process_priority__where_x_is_5realtime_4high__n____3above_normal_2normal_1below_normal_0idle_n___Vx_verbosity_where_x_is_4all_3no_script_2no_info_1no_warnings_0none_n___WX_treat_warnings_as_errors_n___Ofile_specifies_a_text_file_to_log_compiler_output__default_is_stdout__n___LAUNCH_executes_the_generated_installer_n___PAUSE_pauses_after_execution_n___NOCONFIG_disables_inclusion_of__path_to_makensis.exe__nsisconf.nsh_n___NOCD_disables_the_current_directory_change_to_that_of_the_.nsi_file_n___INPUTCHARSET__ACPOEMCPUTF8UTF16_LEBE___n___OUTPUTCHARSET__ACPOEMCPUTF8_SIG_UTF16_LEBE__BOM___n____SAFE_PPO_preprocess_to_stdout_file_n___Ddefine_value__defines_the_symbol__define__for_the_script__to_value__n___Xscriptcmd_executes_scriptcmd_in_script__i.e.___XOutFile_inst.exe___n____parameters_are_processed_by_order___Ddef_ins.nsi___ins.nsi__Ddef__n_nFor_script_file_name__you_can_use___to_read_from_the_standard_input_nYou_can_also_use___as_an_option_character:__PAUSE_as_well_as__PAUSE_nYou_can_use_a_double_dash_to_end_options_processing:_makensis_____ins.nsi_n
mov dword [esp + 4], edi
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x41d328
lea eax, [ebp - 0xd04]
mov ebx, 5
mov dword [esp + 8], eax
xor esi, esi
xor edi, edi
mov dword [esp + 0x14], ebx
xor eax, eax
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], edi
mov dword [esp + 4], eax
mov dword [esp], 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
sub esp, 0x18
xor ebx, ebx
jmp 0x41d338
mov eax, dword [ebp - 0xaf54]
mov ebx, dword [eax]
mov dword [esp], ebx
call sub.msvcrt.dll_wcslen
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xaf34]
mov dword [esp], 0
mov dword [esp + 4], eax
mov ecx, dword [ebp - 0xaf64]
call fcn.0049a440
mov eax, dword [ebp - 0xaf38]
sub esp, 0x10
mov ebx, str.Cant_open_script___ls__n
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.00403350
jmp 0x41e249
movzx edx, word [ebp - 0xaee8]
mov word [edi], dx
jmp 0x41e18e
movzx eax, byte [esi]
inc edi
inc esi
dec ecx
mov byte [edi - 1], al
jmp 0x41e000
movzx eax, word [esi]
add edi, 2
add esi, 2
sub ecx, 2
mov word [edi - 2], ax
jmp 0x41e00c
mov byte [ebp - 0xaf75], al
mov eax, dword [ebp - 0xaf54]
xor esi, esi
mov byte [ebp - 0xaf64], 1
xor edi, edi
mov byte [ebp - 0xaf70], 0
mov byte [ebp - 0xaf74], 0
mov dword [ebp - 0xaf68], eax
lea eax, [ebp - 0xaec8]
mov dword [ebp - 0xaf6c], esi
mov dword [ebp - 0xaf60], edi
mov byte [ebp - 0xaf58], 0
mov dword [ebp - 0xaf5c], eax
jmp 0x41d0e9
mov eax, str.Error___aborting_creation_process_n
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.00403350
jmp 0x41e289
mov edx, 0x4b2ccc
mov dword [esp + 4], edx
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
jne 0x41e641
movzx eax, word [edi + 2]
lea edx, [eax - 0x41]
cmp dx, 0x19
ja 0x41e5f9
or eax, 0x20
cmp eax, 0x73
mov esi, ebx
sete al
dec al
or al, 1
mov byte [ebp - 0xaf70], al
jmp 0x41d084
mov dword [esp], edi
mov eax, str.NOCONFIG
mov dword [esp + 4], eax
call esi
test eax, eax
jne 0x41e6fc
mov byte [ebp - 0xaf58], 0
mov eax, dword [ebp - 0xaf4c]
inc byte [ebp - 0xaf75]
inc eax
mov ebx, eax
jmp 0x41da67
mov eax, str.SafePPO
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
je 0x41e5e9
movzx eax, word [edi + 2]
lea ecx, [eax - 0x41]
cmp cx, 0x19
ja 0x41e66d
or eax, 0x20
cmp eax, 0x76
jne 0x41e6cc
movzx eax, word [edi + 4]
test eax, eax
je 0x41e6cc
cmp word [edi + 6], 0
jne 0x41e6cc
sub eax, 0x30
mov esi, ebx
cmp ax, 2
setbe byte [ebp - 0xaf75]
jmp 0x41d084
movzx eax, word [esi]
add edi, 2
add esi, 2
sub ecx, 2
mov word [edi - 2], ax
jmp 0x41e450
movzx eax, byte [ebp - 0xaee8]
inc edi
dec ecx
lea esi, [ebp - 0xaee7]
mov byte [edi - 1], al
jmp 0x41e444
mov eax, 0x4b2ce4
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xaf4c]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
jne 0x41e726
movzx eax, byte [ebp - 0xaf58]
mov byte [ebp - 0xaf74], al
mov esi, ebx
jmp 0x41d084
mov dword [esp], edi
mov eax, str.PAUSE
mov dword [esp + 4], eax
call esi
test eax, eax
jne 0x41e77a
mov byte [0x4f24c2], 1
jmp 0x41df0d
mov dword [esp], 0x4b45f4
call fcn.004a64e4
movzx eax, word [edi + 2]
lea ecx, [eax - 0x41]
cmp cx, 0x19
ja 0x41e736
or eax, 0x20
cmp eax, 0x6f
mov esi, ebx
jne 0x41d084
cmp word [edi + 4], 0
je 0x41e6f5
lea eax, [edi + 4]
mov dword [ebp - 0xaf6c], eax
jmp 0x41d084
mov dword [esp], 0x4b45f4
call fcn.004a64e4
mov dword [esp], 0x4b45f4
call fcn.004a64e4
mov dword [esp], 0x4b45f4
call fcn.004a64e4
mov dword [esp + 4], str.LAUNCH
mov dword [esp], edi
call esi
test eax, eax
jne 0x41e7da
mov byte [ebp - 0xaf58], 0
mov eax, dword [ebp - 0xaf4c]
inc byte [ebp - 0xaf78]
inc eax
mov ebx, eax
jmp 0x41da67
mov dword [esp], 0x4b45f4
call fcn.004a64e4
mov dword [esp], 0x4b45f4
call fcn.004a64e4
movzx eax, byte [ebp - 0xaf76]
xor ebx, ebx
mov byte [ebp - 0xaf58], al
xor eax, eax
mov dword [ebp - 0xaf88], eax
jmp 0x41d312
mov dword [esp + 4], str.HELP
mov dword [esp], edi
call esi
test eax, eax
jne 0x41e834
mov dword [esp + 4], str.Usage:_n__makensis___option__script.nsi_______...__n_nOptions:_n___CMDHELP__item__prints_out_help_for_item__or_lists_all_commands_n___HDRINFO_prints_information_about_what_options_makensis_was_compiled_with_n___LICENSE_prints_the_makensis_software_license_n___VERSION_prints_the_makensis_version_and_exits_n___Px_sets_the_compiler_process_priority__where_x_is_5realtime_4high__n____3above_normal_2normal_1below_normal_0idle_n___Vx_verbosity_where_x_is_4all_3no_script_2no_info_1no_warnings_0none_n___WX_treat_warnings_as_errors_n___Ofile_specifies_a_text_file_to_log_compiler_output__default_is_stdout__n___LAUNCH_executes_the_generated_installer_n___PAUSE_pauses_after_execution_n___NOCONFIG_disables_inclusion_of__path_to_makensis.exe__nsisconf.nsh_n___NOCD_disables_the_current_directory_change_to_that_of_the_.nsi_file_n___INPUTCHARSET__ACPOEMCPUTF8UTF16_LEBE___n___OUTPUTCHARSET__ACPOEMCPUTF8_SIG_UTF16_LEBE__BOM___n____SAFE_PPO_preprocess_to_stdout_file_n___Ddefine_value__defines_the_symbol__define__for_the_script__to_value__n___Xscriptcmd_executes_scriptcmd_in_script__i.e.___XOutFile_inst.exe___n____parameters_are_processed_by_order___Ddef_ins.nsi___ins.nsi__Ddef__n_nFor_script_file_name__you_can_use___to_read_from_the_standard_input_nYou_can_also_use___as_an_option_character:__PAUSE_as_well_as__PAUSE_nYou_can_use_a_double_dash_to_end_options_processing:_makensis_____ins.nsi_n
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call sub.msvcrt.dll_fflush
inc dword [ebp - 0xaf90]
mov byte [ebp - 0xaf58], 0
mov eax, dword [ebp - 0xaf90]
or dword [ebp - 0xaf88], eax
mov eax, dword [ebp - 0xaf4c]
inc eax
mov ebx, eax
jmp 0x41da67
mov dword [esp + 4], str.LICENSE
mov dword [esp], edi
call esi
test eax, eax
jne 0x41e865
cmp byte [ebp - 0xaea4], 0
je 0x41e80d
mov dword [esp + 4], str.Copyright__C__1999_2023_Nullsoft_and_Contributors_n_nThis_license_applies_to_everything_in_the_NSIS_package__except_where_otherwise_nnoted._n_nThis_software_is_provided_as_is__without_any_express_or_implied_warranty._nIn_no_event_will_the_authors_be_held_liable_for_any_damages_arising_from_the_nuse_of_this_software._n_nPermission_is_granted_to_anyone_to_use_this_software_for_any_purpose__including_ncommercial_applications__and_to_alter_it_and_redistribute_it_freely__subject_to_nthe_following_restrictions:_n__1._The_origin_of_this_software_must_not_be_misrepresented__you_must_not_claim_n_____that_you_wrote_the_original_software._If_you_use_this_software_in_a_n_____product__an_acknowledgment_in_the_product_documentation_would_be_n_____appreciated_but_is_not_required._n__2._Altered_source_versions_must_be_plainly_marked_as_such__and_must_not_be_n_____misrepresented_as_being_the_original_software._n__3._This_notice_may_not_be_removed_or_altered_from_any_source_distribution._n_nIn_addition_to_this_license__different_licenses_apply_to_the_included_ncompression_modules._See_the_file_COPYING_for_details._n
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
jmp 0x41e800
mov dword [esp + 4], str.CMDHELP
mov dword [esp], edi
call esi
test eax, eax
jne 0x41e8e9
mov eax, dword [ebp - 0xaf68]
mov esi, dword [ebp - 0xaf4c]
lea edx, [eax - 1]
xor eax, eax
cmp edx, esi
jle 0x41e89c
mov eax, dword [ebp - 0xaf50]
inc esi
mov dword [ebp - 0xaf4c], esi
mov eax, dword [eax + ebx + 4]
mov dword [esp + 4], 1
mov dword [esp], eax
mov ecx, dword [ebp - 0xaf5c]
call fcn.0044bc30
push ecx
push ecx
mov esi, dword [ebp - 0xaf4c]
mov byte [ebp - 0xaf58], al
inc esi
test al, al
mov ebx, esi
je 0x41da67
inc dword [ebp - 0xaf90]
mov byte [ebp - 0xaf58], 0
mov eax, dword [ebp - 0xaf90]
or dword [ebp - 0xaf88], eax
jmp 0x41da67
mov dword [esp + 4], str.HDRINFO
mov dword [esp], edi
call esi
mov dword [ebp - 0xaf60], eax
test eax, eax
jne 0x41ea55
cmp byte [ebp - 0xaea4], 0
je 0x41e80d
mov dword [esp + 8], 0x1c
mov dword [esp + 4], str.Size_of_first_header_is__lu_bytes._n
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov eax, dword [ebp - 0xaec8]
mov dword [esp + 4], str.Size_of_main_header_is__lu_bytes._n
sub eax, 2
cmp eax, 2
sbb eax, eax
and eax, 0x20
add eax, 0x12c
mov dword [esp + 8], eax
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov dword [esp + 8], 0x2018
mov dword [esp + 4], str.Size_of_each_section_is__lu_bytes._n
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov dword [esp + 8], 0x40
mov dword [esp + 4], str.Size_of_each_page_is__lu_bytes._n
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov dword [esp + 8], 0x1c
mov dword [esp + 4], str.Size_of_each_instruction_is__lu_bytes._n
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
lea ecx, [ebp - 0xaec0]
call fcn.0044baa0
mov dword [esp + 4], str._nDefined_symbols:
mov ebx, eax
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
lea esi, [ebx - 1]
jmp 0x41e9e1
inc dword [ebp - 0xaf60]
mov eax, dword [ebp - 0xaf60]
cmp ebx, eax
jle 0x41ec9d
mov edi, dword [ebp - 0xaf60]
lea ecx, [ebp - 0xaec0]
mov dword [esp], edi
call fcn.0044bac0
push edx
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4b444e
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
mov dword [esp], edi
lea ecx, [ebp - 0xaec0]
call fcn.0044bb10
push edi
cmp word [eax], 0
jne 0x41ec7f
cmp dword [ebp - 0xaf60], esi
jge 0x41e9db
mov dword [esp + 4], 0x4b4460
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
jmp 0x41e9db
mov dword [esp + 4], 0x4b2c58
mov dword [esp], edi
call esi
test eax, eax
je 0x41ecbf
mov dword [esp + 4], 0x4b2c72
mov dword [esp], edi
call esi
test eax, eax
je 0x41ecbf
mov eax, dword [ebp - 0xaf58]
movzx eax, word [eax + 2]
lea edx, [eax - 0x41]
cmp dx, 0x19
ja 0x41ea95
or eax, 0x20
cmp eax, 0x76
je 0x41eae0
cmp eax, 0x70
jne 0x41eab8
mov eax, dword [ebp - 0xaf54]
mov eax, dword [eax]
movzx edx, word [eax + 4]
lea ebx, [edx - 0x30]
cmp bx, 5
jbe 0x41ed38
mov dword [esp + 4], str.NOTIFYHWND
mov dword [esp], edi
call esi
test eax, eax
jne 0x41eb10
mov byte [ebp - 0xaf58], 0
mov eax, dword [ebp - 0xaf4c]
add eax, 2
mov ebx, eax
jmp 0x41da67
mov eax, dword [ebp - 0xaf54]
mov edx, dword [eax]
movzx eax, word [edx + 4]
sub eax, 0x30
cmp ax, 4
ja 0x41eab8
cmp word [edx + 6], 0
jne 0x41eab8
mov dword [esp], eax
mov ecx, dword [ebp - 0xaf5c]
call fcn.00402ea0
push ecx
jmp 0x41df0d
mov dword [esp + 4], str.OUTPUTCHARSET
mov dword [esp], edi
call esi
test eax, eax
je 0x41eac9
mov dword [esp + 4], 0x4b2cbc
mov dword [esp], edi
call esi
test eax, eax
je 0x41eac9
mov eax, dword [ebp - 0xaf58]
movzx eax, word [eax + 2]
lea edx, [eax - 0x41]
cmp dx, 0x19
ja 0x41eb48
or eax, 0x20
cmp eax, 0x64
je 0x41ebad
cmp eax, 0x78
jne 0x41eb63
mov eax, dword [ebp - 0xaf58]
cmp word [eax + 4], 0
jne 0x41ec27
mov dword [esp + 4], 0x4b2cc4
mov dword [esp], edi
call esi
test eax, eax
je 0x41df0d
mov eax, dword [ebp - 0xaf58]
movzx eax, word [eax + 2]
lea edx, [eax - 0x41]
cmp dx, 0x19
ja 0x41eb8e
or eax, 0x20
cmp eax, 0x6f
jne 0x41dad4
mov eax, dword [ebp - 0xaf58]
cmp word [eax + 4], 0
jne 0x41df0d
jmp 0x41dad4
mov eax, dword [ebp - 0xaf58]
cmp word [eax + 4], 0
je 0x41eb63
mov eax, dword [ebp - 0xaf54]
mov esi, dword [eax]
add esi, 4
mov dword [esp], esi
call dword [sym.imp.msvcrt.dll__wcsdup]
mov dword [esp + 8], esi
mov ebx, eax
mov dword [esp + 4], str.Command_line_defined:___ls__n
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.00403010
mov dword [esp + 4], 0x4b45b6
mov dword [esp], ebx
call sub.msvcrt.dll_wcsstr
test eax, eax
je 0x41ec78
mov word [eax], 0
lea edx, [eax + 2]
mov dword [esp + 4], edx
mov dword [esp], ebx
mov ecx, dword [ebp - 0xaf5c]
call fcn.00402610
push eax
push eax
mov dword [esp], ebx
call fcn.00483050
jmp 0x41df0d
mov dword [esp + 0xc], 2
mov eax, dword [ebp - 0xaf4c]
mov dword [esp + 4], str._command_line_
inc eax
mov dword [esp + 8], eax
mov ebx, eax
mov eax, dword [ebp - 0xaf58]
add eax, 4
mov dword [esp], eax
mov ecx, dword [ebp - 0xaf5c]
call fcn.00443950
sub esp, 0x10
test eax, eax
jne 0x41e289
inc dword [ebp - 0xaf8c]
mov byte [ebp - 0xaf58], 0
jmp 0x41da67
mov edx, 0x4b2c16
jmp 0x41ec06
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4b4456
mov eax, dword [0x4f24c8]
mov dword [esp], eax
call fcn.004509f0
jmp 0x41ea36
test ebx, ebx
mov eax, dword [0x4f24c8]
je 0x41ed93
mov dword [esp + 4], 0x4b2c12
mov dword [esp], eax
call fcn.004509f0
jmp 0x41e800
inc dword [ebp - 0xaf4c]
mov ecx, dword [ebp - 0xaf68]
mov eax, dword [ebp - 0xaf4c]
cmp eax, ecx
jge 0x41ee01
mov eax, dword [ebp - 0xaf50]
lea ebx, [eax + ebx + 4]
mov eax, dword [ebx]
cmp word [eax], 0
je 0x41ee01
mov dword [esp], eax
call fcn.0044d140
movzx eax, ax
mov dword [ebp - 0xaf7c], eax
cmp eax, 0xffff
je 0x41edc1
cmp dword [ebp - 0xaf7c], 0xfffe
jne 0x41df0d
mov byte [ebp - 0xaf58], 0
xor eax, eax
mov dword [ebp - 0xaf7c], eax
mov eax, dword [ebp - 0xaf4c]
inc eax
mov ebx, eax
jmp 0x41da67
cmp word [eax + 6], 0
jne 0x41eab8
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edi, eax
mov eax, dword [ebx*8 + str._____]
mov dword [esp], edi
mov esi, dword [sym.imp.KERNEL32.dll_SetPriorityClass]
mov dword [esp + 4], eax
call esi
push edx
test eax, eax
push edx
je 0x41edad
cmp ebx, 5
jne 0x41df0d
mov dword [esp + 8], str.makensis_is_running_in_REALTIME_priority_mode_
mov dword [esp + 4], 0x2133
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.004075b0
jmp 0x41df0d
mov dword [esp + 4], 0x4b4464
mov dword [esp], eax
call fcn.004509f0
mov eax, dword [0x4f24c8]
jmp 0x41ecaa
mov dword [esp], edi
mov eax, dword [ebx*8 + 0x4b4a84]
mov dword [esp + 4], eax
call esi
push eax
push eax
jmp 0x41ed67
mov dword [esp + 4], str.AUTO
mov eax, dword [ebx]
mov dword [esp], eax
call esi
test eax, eax
je 0x41ed1b
mov eax, dword [ebx]
mov dword [esp + 8], str._INPUTCHARSET:_Ignoring_invalid_charset__ls
mov dword [esp + 4], 0x145a
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xaf5c]
mov dword [esp], eax
call fcn.004075b0
jmp 0x41ed1b
mov dword [esp], str.Error:_Missing_required_parameter__n
call fcn.00488c90
jmp 0x41dad4