Function at 0x54dc00
Capabilities:
Create process on windows
Query environment variable
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x68
mov edi, ecx
lea esi, [ebp + 0x10]
mov eax, dword [0x644040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push dword [ebp + 8]
call fcn.00564f2b
add esp, 4
mov ecx, dword [edi + 0x2c]
mov dword [edi + 0x2c], eax
test ecx, ecx
jne 0x54e82c
mov esi, dword [esi]
push dword [ebp + 0xc]
call fcn.00564f2b
add esp, 4
mov dword [ebp - 0x64], eax
xor ebx, ebx
mov dword [ebp - 0x70], esi
cmp dword [esi + 0x60], 0
setne bl
shl ebx, 0x13
or ebx, 0x40c
cmp dword [edi + 0x1c], 0
je 0x54dc6d
call fcn.00538ad0
lea ecx, [ebx + 0x1000000]
cmp eax, 5
cmovl ebx, ecx
mov dword [ebp - 0x74], ebx
xorps xmm0, xmm0
movsd qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x70]
cmp byte [eax + 0x11], 1
mov dword [ebp - 0x68], edi
je 0x54de96
xor ecx, ecx
xor edx, edx
xor ebx, ebx
mov esi, dword [ebp - 0x70]
movzx eax, byte [esi + 0x10]
mov dword [ebp - 0x54], eax
xorps xmm0, xmm0
lea eax, [ebp - 0x2c]
movups xmmword [eax], xmm0
or byte [esi + 0x48], 0x80
add esi, 0x1c
test bl, bl
movzx edi, bl
cmovs edi, edx
lea edx, [ebp - 0x1c]
cmovs edx, ecx
test edi, edi
cmove edx, edi
mov edi, eax
push eax
push esi
xor eax, eax
push eax
push edx
push dword [ebp - 0x74]
push dword [ebp - 0x54]
push eax
push eax
push dword [ebp - 0x64]
push dword [ebp + 8]
mov ebx, dword [ebp - 0x68]
push dword [ebx + 0x10]
call dword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
je 0x54e893
lea ecx, [ebp - 0x3c]
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
push edi
call fcn.0042ca90
mov eax, dword [ebx + 0x1c]
test eax, eax
lea esi, [ebp + 0x10]
je 0x54dd19
mov ecx, dword [esi]
mov edx, dword [ecx + 0x98]
cmp edx, dword [ecx + 0x9c]
je 0x54e861
push dword [ebp - 0x3c]
push dword [ebp + 0xc]
call fcn.00435a60
add esp, 8
mov eax, dword [ebp - 0x38]
lea ecx, [ebp - 0x40]
mov dword [ecx], eax
push dword [ebx + 0x14]
push ecx
call dword [sym.imp.ADVAPI32.dll_SetThreadToken]
test eax, eax
je 0x54e7cc
mov eax, dword [ebp - 0x38]
xor ecx, ecx
dec ecx
lea edi, [ebp - 0x50]
mov dword [edi + 4], ecx
mov dword [edi], ecx
push 0
push 1
push eax
push edi
call fcn.00435720
add esp, 0x10
mov al, byte [edi + 4]
cmp al, 1
jne 0x54e7c5
lea esi, [ebp - 0x50]
mov ecx, esi
call fcn.004357e0
mov ebx, eax
xor bl, 1
mov al, byte [esi + 4]
test al, 1
je 0x54dd86
lea ecx, [ebp - 0x50]
call fcn.00425470
test bl, bl
je 0x54e7d9
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp - 0x3c]
mov edx, ebx
call fcn.0042a2b0
test al, al
je 0x54e7f7
lea edx, [ebx + 4]
mov ecx, dword [ebp - 0x38]
call fcn.0042a2b0
test al, al
je 0x54e7f7
mov eax, dword [ebp - 0x34]
mov dword [ebx + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [ebx + 0xc], eax
push dword [ebp - 0x3c]
call fcn.004358a0
add esp, 4
mov ecx, dword [ebp - 0x68]
mov dword [ecx + 0x28], eax
test eax, eax
je 0x54e841
cmp eax, 0x400000
jne 0x54e817
mov esi, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
lea eax, [esi + 1]
cmp eax, 2
jb 0x54ddfd
call fcn.005018d0
mov dword [ebp - 0x50], esi
mov esi, dword [ebp - 0x38]
mov dword [ebp - 0x38], 0
lea eax, [esi + 1]
cmp eax, 2
jb 0x54de17
call fcn.005018d0
mov dword [ebp - 0x4c], esi
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], ebx
mov ecx, dword [ebp - 0x68]
push edi
call fcn.0042ca90
lea esi, [ebp + 0x10]
mov edi, dword [ebp - 0x64]
lea ecx, [ebp - 0x3c]
call fcn.0042d9d0
cmp byte [ebp - 0x11], 0
jns 0x54de56
push dword [ebp - 0x1c]
call fcn.00562f60
add esp, 4
test edi, edi
je 0x54de6a
push 0
push edi
push 0x635600
call fcn.0050f990
add esp, 0xc
mov esi, dword [esi]
test esi, esi
je 0x54de80
mov ecx, esi
call fcn.00435970
push esi
call fcn.00562f60
add esp, 4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00566245
mov eax, ebx
add esp, 0x68
pop esi
pop edi
pop ebx
pop ebp
ret 0x14
call dword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
test eax, eax
je 0x54e8b8
mov edi, eax
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x48], 0
movzx eax, word [eax]
test ax, ax
je 0x54dec7
mov dword [ebp - 0x6c], edi
mov esi, edi
jmp 0x54e01e
xor ecx, ecx
jmp 0x54ded7
cmp cl, 4
mov edi, dword [ebp - 0x6c]
je 0x54e76e
movzx eax, cl
inc cl
and cl, 0x7f
lea edx, [ebp - 0x50]
mov byte [edx + 0xb], cl
jmp 0x54df0e
mov cl, byte [ebp - 0x45]
test cl, cl
jns 0x54decb
mov esi, 0x7fffffff
and esi, dword [ebp - 0x48]
dec esi
mov eax, dword [ebp - 0x4c]
cmp eax, esi
mov edi, dword [ebp - 0x6c]
je 0x54e773
mov edx, dword [ebp - 0x50]
lea ecx, [eax + 1]
mov dword [ebp - 0x4c], ecx
mov dword [edx + eax*2], 0
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x14], eax
movsd xmm0, qword [ebp - 0x50]
movsd qword [ebp - 0x1c], xmm0
push edi
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov bl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
jmp 0x54dc95
movzx eax, ax
test eax, eax
je 0x54df50
movzx eax, word [ebx + edi*2 + 2]
inc edi
add esi, 2
cmp ax, 0x3d
jne 0x54df3a
lea ecx, [ebp - 0x2c]
push edi
push ebx
call fcn.00435670
cmp byte [ebp - 0x31], 0
js 0x54e7b5
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x34], eax
movsd xmm0, qword [ebp - 0x2c]
movsd qword [ebp - 0x3c], xmm0
nop word cs:[eax + eax]
inc edi
cmp word [esi], 0
lea esi, [esi + 2]
jne 0x54df80
movsx eax, byte [ebp - 0x31]
test eax, eax
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x54], eax
cmovns ecx, eax
mov edx, dword [ebp - 0x3c]
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x58], edx
cmovs eax, edx
test ecx, ecx
js 0x54e797
setne dl
test eax, eax
sete dh
test dl, dh
jne 0x54e7a6
mov dword [ebp - 0x5c], str.SystemDrive
mov dl, 1
mov dword [ebp - 0x60], edx
lea edx, [ecx - 3]
cmp edx, 9
ja case.default.0x54dfd1
jmp dword [edx*4 + 0x63873c]
mov edx, dword [ebp - 0x54]
mov eax, 0x638664
mov ecx, dword [ebp - 0x5c]
sub ecx, eax
sar ecx, 3
test ecx, ecx
jle 0x54e78e
cmp ecx, 9
jae 0x54e78b
cmp byte [ebp - 0x60], 0
je 0x54e1db
test dl, dl
jns 0x54e012
push dword [ebp - 0x3c]
call fcn.00562f60
add esp, 4
movzx eax, word [esi]
test ax, ax
je 0x54dee7
mov ebx, esi
xorps xmm0, xmm0
movsd qword [ebp - 0x3c], xmm0
mov dword [ebp - 0x34], 0
xor edi, edi
jmp 0x54df4a
cmp ecx, 0x19
mov edx, dword [ebp - 0x54]
je 0x54e580
cmp ecx, 0x15
jne 0x54dfdb
cmp word [eax], 0x47
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
mov ecx, dword [ebp - 0x58]
cmovs eax, ecx
cmp word [eax + 2], 0x50
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 4], 0x55
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 6], 0x5f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 8], 0x43
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xa], 0x4f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xc], 0x4e
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xe], 0x46
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x10], 0x49
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x12], 0x47
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x14], 0x53
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x16], 0x5f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x18], 0x4f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x1a], 0x56
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x1c], 0x45
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x1e], 0x52
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x20], 0x52
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x22], 0x49
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x24], 0x44
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x26], 0x45
lea eax, [ebp - 0x3c]
jne 0x54dfdb
test dl, dl
cmovns ecx, eax
cmp word [ecx + 0x28], 0x53
setne al
mov dword [ebp - 0x60], eax
mov eax, str.SystemDrive
mov ecx, 0x63869c
jmp 0x54e3c6
lea ecx, [ebp - 0x50]
push edi
push ebx
call fcn.0053d1f0
mov dl, byte [ebp - 0x31]
jmp 0x54e003
movzx ecx, word [eax]
cmp cx, 0x50
jne 0x54e242
cmp byte [ebp - 0x54], 0
lea ecx, [ebp - 0x3c]
mov edx, dword [ebp - 0x58]
cmovs ecx, edx
cmp word [ecx + 2], 0x61
jne 0x54e23f
cmp byte [ebp - 0x54], 0
lea ecx, [ebp - 0x3c]
cmovs ecx, edx
cmp word [ecx + 4], 0x74
jne 0x54e23f
cmp byte [ebp - 0x54], 0
lea ecx, [ebp - 0x3c]
cmovs ecx, edx
cmp word [ecx + 6], 0x68
jne 0x54e23f
mov dword [ebp - 0x5c], str.Path
mov dword [ebp - 0x60], 0
jmp case.0x54dfd1.5
movzx ecx, word [eax]
cmp cx, 0x54
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x58]
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 2], 0x45
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 4], 0x4d
lea eax, [ebp - 0x3c]
jne 0x54dfdb
test dl, dl
cmovns ecx, eax
cmp word [ecx + 6], 0x50
jne 0x54dfdb
mov dword [ebp - 0x5c], 0x63867c
mov dword [ebp - 0x60], 0
jmp 0x54dfdb
cmp word [eax], 0x4c
jne case.0x54dfd1.5
mov edx, dword [ebp - 0x54]
test dl, dl
lea eax, [ebp - 0x3c]
mov ecx, dword [ebp - 0x58]
cmovs eax, ecx
cmp word [eax + 2], 0x4f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 4], 0x43
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 6], 0x41
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 8], 0x4c
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xa], 0x41
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xc], 0x50
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xe], 0x50
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x10], 0x44
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x12], 0x41
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x14], 0x54
lea eax, [ebp - 0x3c]
jne 0x54dfdb
test dl, dl
cmovns ecx, eax
cmp word [ecx + 0x16], 0x41
setne al
mov dword [ebp - 0x60], eax
mov ecx, 0x63868c
jmp 0x54e3c1
cmp word [eax], 0x54
jne case.0x54dfd1.5
mov edx, dword [ebp - 0x54]
test dl, dl
lea eax, [ebp - 0x3c]
mov ecx, dword [ebp - 0x58]
cmovs eax, ecx
cmp word [eax + 2], 0x4d
lea eax, [ebp - 0x3c]
jne 0x54dfdb
test dl, dl
cmovns ecx, eax
cmp word [ecx + 4], 0x50
setne al
mov dword [ebp - 0x60], eax
mov ecx, 0x638684
mov eax, str.SystemDrive
cmovne ecx, eax
mov dword [ebp - 0x5c], ecx
jmp 0x54dfdb
cmp word [eax], 0x53
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x58]
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 2], 0x79
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 4], 0x73
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 6], 0x74
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 8], 0x65
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xa], 0x6d
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xc], 0x52
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xe], 0x6f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x10], 0x6f
lea eax, [ebp - 0x3c]
jne 0x54dfdb
test dl, dl
cmovns ecx, eax
cmp word [ecx + 0x12], 0x74
jne 0x54dfdb
mov dword [ebp - 0x5c], str.SystemRoot
mov dword [ebp - 0x60], 0
jmp 0x54dfdb
cmp word [eax], 0x53
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x58]
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 2], 0x79
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 4], 0x73
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 6], 0x74
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 8], 0x65
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xa], 0x6d
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xc], 0x44
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xe], 0x72
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x10], 0x69
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x12], 0x76
lea eax, [ebp - 0x3c]
jne 0x54dfdb
test dl, dl
cmovns ecx, eax
cmp word [ecx + 0x14], 0x65
jne 0x54dfdb
mov dword [ebp - 0x5c], str.SystemDrive
mov dword [ebp - 0x60], 0
jmp 0x54dfdb
cmp word [eax], 0x43
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
mov ecx, dword [ebp - 0x58]
cmovs eax, ecx
cmp word [eax + 2], 0x48
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 4], 0x52
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 6], 0x4f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 8], 0x4d
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xa], 0x45
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xc], 0x5f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0xe], 0x43
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x10], 0x52
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x12], 0x41
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x14], 0x53
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x16], 0x48
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x18], 0x50
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x1a], 0x41
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x1c], 0x44
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x1e], 0x5f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x20], 0x50
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x22], 0x49
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x24], 0x50
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x26], 0x45
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, ecx
cmp word [eax + 0x28], 0x5f
jne 0x54dfdb
test dl, dl
lea eax, [ebp - 0x3c]
cmovs eax, dword [ebp - 0x58]
cmp word [eax + 0x2a], 0x4e
jne case.0x54dfd1.5
cmp byte [ebp - 0x54], 0
lea eax, [ebp - 0x3c]
cmovs eax, dword [ebp - 0x58]
cmp word [eax + 0x2c], 0x41
jne case.0x54dfd1.5
mov edx, dword [ebp - 0x54]
test dl, dl
lea eax, [ebp - 0x3c]
mov ecx, dword [ebp - 0x58]
cmovs eax, ecx
cmp word [eax + 0x2e], 0x4d
lea eax, [ebp - 0x3c]
jne 0x54dfdb
test dl, dl
cmovns ecx, eax
cmp word [ecx + 0x30], 0x45
setne al
mov dword [ebp - 0x60], eax
mov eax, str.SystemDrive
mov ecx, 0x638694
jmp 0x54e3c6
mov esi, 4
xor eax, eax
lea ecx, [ebp - 0x50]
push eax
push eax
push esi
push esi
push 1
push esi
call fcn.0052bdd0
mov eax, esi
jmp 0x54df05
int3
jns 0x54dff9
int3
push str....._third_partylibc_srcinclude_string_view:318:_assertion___len___static_cast_size_type__numeric_limits_difference_type_::max____failed:_string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type_n
push 0x622e92
call fcn.00590170
push str....._third_partylibc_srcinclude_string_view:320:_assertion___len__0____s___nullptr_failed:_string_view::string_view__CharT___size_t_:_received_nullptr_n
push 0x622e92
call fcn.00590170
push dword [ebp - 0x3c]
call fcn.00562f60
add esp, 4
jmp 0x54df64
xor ebx, ebx
jmp 0x54dd7a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
jmp 0x54e7e2
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x542
push 0
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, 0x15
jmp 0x54de37
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
push 0
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, 0x17
jmp 0x54de37
push 0
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, 0x41
jmp 0x54de37
push 0
push ecx
push 0x635600
call fcn.0050f990
add esp, 0xc
jmp 0x54dc31
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
push 0
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, 0x2b
jmp 0x54de37
push dword [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_AssignProcessToJobObject]
test eax, eax
jne 0x54dd19
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
push 0
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ebx, 0x14
jmp 0x54de3a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
push 0
call fcn.005e0c10
add esp, 4
mov ebx, 0x12
lea esi, [ebp + 0x10]
mov edi, dword [ebp - 0x64]
jmp 0x54de45
mov ebx, 0x46
lea esi, [ebp + 0x10]
mov edi, dword [ebp - 0x64]
jmp 0x54de56