Function at 0x414c10
Capabilities:
Get common file path
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x440349
mov eax, dword fs:[0]
push eax
sub esp, 0x31c
mov eax, dword [0x455010]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x320], eax
mov dword [ebp - 0x314], eax
mov dword [ebp - 0x314], eax
xor eax, eax
mov dword [ebp - 0x31c], eax
mov dword [ebp - 0x328], eax
push eax
mov dword [ebp - 4], eax
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
xorps xmm0, xmm0
mov dword [ebp - 0x2d0], 0
movups xmmword [ebp - 0x2e0], xmm0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
mov byte [ebp - 4], 1
lea eax, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
push 0x44d450
cmovae eax, dword [ebp + 8]
push eax
call fcn.0042997a
mov esi, eax
add esp, 8
test esi, esi
jne 0x414cd2
mov edx, str.Failed_to_open
mov ecx, 0x456268
call fcn.00418150
push eax
call fcn.004183f0
add esp, 4
jmp 0x414d1b
push esi
lea eax, [ebp - 0x90]
push 0x80
push eax
call fcn.00429d7d
add esp, 0xc
test eax, eax
je 0x414d1b
nop dword [eax + eax]
lea eax, [ebp - 0x90]
push eax
lea ecx, [ebp - 0x2e0]
call fcn.00417550
push esi
lea eax, [ebp - 0x90]
push 0x80
push eax
call fcn.00429d7d
add esp, 0xc
test eax, eax
jne 0x414cf0
push esi
call fcn.004298a3
xorps xmm0, xmm0
mov dword [ebp - 0x2e8], 0
movups xmmword [ebp - 0x2f8], xmm0
add esp, 4
mov dword [ebp - 0x2e4], 0xf
mov byte [ebp - 0x2f8], 0
movups xmmword [ebp - 0x2c8], xmm0
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
mov byte [ebp - 4], 3
lea esi, [ebp + 8]
cmp dword [ebp + 0x1c], 0x10
mov edi, dword [ebp + 0x18]
cmovae esi, dword [ebp + 8]
test edi, edi
je 0x414f20
push edi
push 0x20
push esi
call fcn.004272d0
add esp, 0xc
test eax, eax
je 0x414f20
sub eax, esi
cmp eax, 0xffffffff
je 0x414f20
cmp dword [ebp + 0x1c], 0x10
lea esi, [ebp + 8]
push edi
cmovae esi, dword [ebp + 8]
push 0x20
push esi
call fcn.004272d0
mov ecx, eax
mov dword [ebp - 0x2a0], 0
sub eax, esi
mov dword [ebp - 0x29c], 0
add esp, 0xc
or edx, 0xffffffff
test ecx, ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2b0]
cmovne edx, eax
lea eax, [ebp + 8]
cmp edi, edx
movups xmmword [ebp - 0x2b0], xmm0
cmovb edx, edi
cmp dword [ebp + 0x1c], 0x10
push edx
cmovae eax, dword [ebp + 8]
push eax
call fcn.00419050
lea eax, [ebp - 0x2b0]
push eax
lea ecx, [ebp - 0x2f8]
call fcn.004176c0
mov ecx, dword [ebp - 0x29c]
cmp ecx, 0x10
jb 0x414e4e
mov edx, dword [ebp - 0x2b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414e44
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
cmp dword [ebp + 0x1c], 0x10
lea edi, [ebp + 8]
mov esi, dword [ebp + 0x18]
cmovae edi, dword [ebp + 8]
test esi, esi
je 0x414e74
push esi
push 0x20
push edi
call fcn.004272d0
add esp, 0xc
test eax, eax
je 0x414e74
sub eax, edi
jmp 0x414e77
or eax, 0xffffffff
lea ecx, [eax + 1]
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x2b0], xmm0
cmp esi, ecx
jb 0x415b10
sub esi, ecx
lea eax, [ebp + 8]
cmp esi, 0xffffffff
mov edx, 0xffffffff
cmovb edx, esi
cmp dword [ebp + 0x1c], 0x10
push edx
cmovae eax, dword [ebp + 8]
add eax, ecx
lea ecx, [ebp - 0x2b0]
push eax
call fcn.00419050
mov eax, 0x18
lea ecx, [ebp - 0x2c8]
mov dword [ebp - 0x31c], eax
lea eax, [ebp - 0x2b0]
push eax
call fcn.004176c0
mov ecx, dword [ebp - 0x29c]
cmp ecx, 0x10
jb 0x414f38
mov edx, dword [ebp - 0x2b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414f14
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
jmp 0x414f38
cmp dword [ebp + 0x1c], 0x10
lea eax, [ebp + 8]
push edi
cmovae eax, dword [ebp + 8]
lea ecx, [ebp - 0x2f8]
push eax
call fcn.00417c40
mov esi, dword [ebp - 0x2e4]
lea ecx, [ebp - 0x2f8]
mov edi, dword [ebp - 0x2f8]
cmp esi, 0x10
mov edx, dword [ebp - 0x2e8]
cmovae ecx, edi
mov dword [ebp - 0x314], ecx
cmp edx, 2
jb 0x414fc1
lea eax, [edx - 1]
add eax, ecx
mov dword [ebp - 0x324], eax
sub eax, ecx
push eax
push 0x63
push ecx
call fcn.004272d0
mov ecx, eax
add esp, 0xc
test ecx, ecx
je 0x414fbb
movzx eax, byte [ecx]
cmp al, 0x63
jne 0x414f93
movzx eax, byte [ecx + 1]
cmp al, 0x64
jne 0x414f93
xor eax, eax
jmp 0x414f98
sbb eax, eax
or eax, 1
test eax, eax
je 0x41502a
mov eax, dword [ebp - 0x324]
inc ecx
sub eax, ecx
push eax
push 0x63
push ecx
call fcn.004272d0
mov ecx, eax
add esp, 0xc
test ecx, ecx
jne 0x414f80
mov edx, dword [ebp - 0x2e8]
cmp esi, 0x10
lea ecx, [ebp - 0x2f8]
cmovae ecx, edi
mov dword [ebp - 0x324], ecx
cmp edx, 3
jb 0x41562e
lea eax, [ecx - 2]
add eax, edx
mov dword [ebp - 0x314], eax
sub eax, ecx
push eax
push 0x70
push ecx
call fcn.004272d0
mov ecx, eax
add esp, 0xc
test ecx, ecx
je 0x415628
nop
movzx eax, byte [ecx]
cmp al, 0x70
jne 0x415600
movzx eax, byte [ecx + 1]
cmp al, 0x77
jne 0x415600
movzx eax, byte [ecx + 2]
cmp al, 0x64
jne 0x415600
xor eax, eax
jmp 0x415605
sub ecx, dword [ebp - 0x314]
cmp ecx, 0xffffffff
je 0x414fbb
mov byte [ebp - 0x314], 0
lea edx, [ebp - 0x2c8]
push dword [ebp - 0x314]
lea ecx, [ebp - 0x310]
call fcn.0041ab10
add esp, 4
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x310]
mov eax, dword [ebp - 0x31c]
or eax, 1
mov dword [ebp - 0x31c], eax
mov dword [ebp - 0x328], eax
call fcn.00403060
test al, al
je 0x4150d1
mov byte [ebp - 0x314], 0
lea edx, [ebp - 0x2c8]
push dword [ebp - 0x314]
lea ecx, [ebp - 0x2b0]
call fcn.0041ab10
add esp, 4
mov dword [ebp - 4], 5
lea ecx, [ebp - 0x2b0]
mov eax, dword [ebp - 0x31c]
or eax, 2
mov dword [ebp - 0x31c], eax
mov dword [ebp - 0x328], eax
call fcn.004030d0
mov byte [ebp - 0x315], 1
test al, al
jne 0x4150d8
mov byte [ebp - 0x315], 0
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0x31c]
test al, 2
je 0x415155
mov ecx, dword [ebp - 0x29c]
and eax, 0xfffffffd
mov dword [ebp - 0x31c], eax
cmp ecx, 8
jb 0x415138
mov edx, dword [ebp - 0x2b0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x415128
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b15
push ecx
push edx
call fcn.0042426b
mov eax, dword [ebp - 0x31c]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 7
mov word [ebp - 0x2b0], cx
mov dword [ebp - 4], 3
test al, 1
je 0x4151a0
mov ecx, dword [ebp - 0x2fc]
cmp ecx, 8
jb 0x4151a0
mov edx, dword [ebp - 0x310]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x415196
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b15
push ecx
push edx
call fcn.0042426b
add esp, 8
cmp byte [ebp - 0x315], 0
je 0x4153aa
mov byte [ebp - 0x314], 0
lea edx, [ebp - 0x2c8]
push dword [ebp - 0x314]
lea ecx, [ebp - 0x2b0]
call fcn.0041ab10
add esp, 4
mov byte [ebp - 4], 6
lea eax, [ebp - 0x2b0]
cmp dword [ebp - 0x29c], 8
cmovae eax, dword [ebp - 0x2b0]
push eax
call fcn.00421983
test eax, eax
jne 0x415b1a
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x29c]
cmp ecx, 8
jb 0x415238
mov edx, dword [ebp - 0x2b0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41522e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b2d
push ecx
push edx
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x2b8]
mov eax, 0x7fffffff
sub eax, ecx
cmp eax, 0x2d
jb 0x415b3c
cmp dword [ebp - 0x2b4], 0x10
lea eax, [ebp - 0x2c8]
push ecx
cmovae eax, dword [ebp - 0x2c8]
push eax
push 0x2d
push str.Successfully_migrated_to_a_new_directory____
push ecx
push dword [ebp - 0x314]
mov ecx, dword [ebp - 0x320]
call fcn.0041a3f0
mov ecx, dword [ebp - 0x2b4]
cmp ecx, 0x10
jb 0x4152b7
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4152ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
cmp esi, 0x10
jb 0x415300
inc esi
mov eax, edi
cmp esi, 0x1000
jb 0x4152f6
mov edi, dword [eax - 4]
add esi, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push esi
push edi
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0x10
jb 0x41533a
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x415330
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp + 0x1c]
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
cmp ecx, 0x10
jb 0x415389
mov edx, dword [ebp + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41537f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov eax, dword [ebp - 0x320]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00423fd7
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x2b8]
mov eax, 0x7fffffff
sub eax, ecx
cmp eax, 0xd
jb 0x415b32
cmp dword [ebp - 0x2b4], 0x10
lea eax, [ebp - 0x2c8]
push ecx
cmovae eax, dword [ebp - 0x2c8]
push eax
push 0xd
push str.Migration_to
push ecx
push dword [ebp - 0x314]
lea ecx, [ebp - 0x2b0]
call fcn.0041a3f0
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x29c]
mov eax, edx
mov ecx, dword [ebp - 0x2a0]
sub eax, ecx
push 0x44
push str._was_unsuccessful_as_the_directory_is_neither_a_file_nor_existent...
cmp eax, 0x44
jb 0x415445
cmp edx, 0x10
lea esi, [ebp - 0x2b0]
lea eax, [ecx + 0x44]
cmovae esi, dword [ebp - 0x2b0]
add esi, ecx
mov dword [ebp - 0x2a0], eax
push esi
call fcn.00425500
mov byte [esi + 0x44], 0
lea ecx, [ebp - 0x2b0]
mov esi, dword [ebp - 0x2e4]
add esp, 0xc
jmp 0x415461
mov byte [ebp - 0x314], 0
lea ecx, [ebp - 0x2b0]
push dword [ebp - 0x314]
push 0x44
call fcn.00418ef0
mov ecx, eax
mov eax, dword [ebp - 0x320]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
movups xmm0, xmmword [ecx]
movups xmmword [eax], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [eax + 0x10], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov ecx, dword [ebp - 0x29c]
cmp ecx, 0x10
jb 0x4154d6
mov edx, dword [ebp - 0x2b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4154cc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2b0], 0
cmp ecx, 0x10
jb 0x41552b
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x415521
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
cmp esi, 0x10
jb 0x415574
inc esi
mov eax, edi
cmp esi, 0x1000
jb 0x41556a
mov edi, dword [eax - 4]
add esi, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push esi
push edi
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0x10
jb 0x4155ae
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4155a4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp + 0x1c]
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
cmp ecx, 0x10
jb 0x415389
mov edx, dword [ebp + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41537f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
jmp 0x41537f
sbb eax, eax
or eax, 1
test eax, eax
je 0x415650
mov eax, dword [ebp - 0x314]
inc ecx
sub eax, ecx
push eax
push 0x70
push ecx
call fcn.004272d0
mov ecx, eax
add esp, 0xc
test ecx, ecx
jne 0x415000
mov edx, dword [ebp - 0x2e8]
cmp dword [ebp - 0x2d0], 0
jne 0x415a03
mov eax, 0x7fffffff
sub eax, edx
cmp eax, 0x1e
jb 0x415b3c
jmp 0x415980
sub ecx, dword [ebp - 0x324]
cmp ecx, 0xffffffff
je 0x415628
lea eax, [ebp - 0x298]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
je 0x41586b
lea eax, [ebp - 0x298]
push eax
lea ecx, [ebp - 0x2b0]
call fcn.004173e0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2b0]
cmp dword [ebp - 0x29c], 8
mov eax, dword [ebp - 0x2a0]
cmovae ecx, dword [ebp - 0x2b0]
lea eax, [ecx + eax*2]
lea ecx, [ebp - 0x2b0]
cmovae ecx, dword [ebp - 0x2b0]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x310]
call fcn.00418490
mov byte [ebp - 4], 9
mov eax, 0x7fffffff
mov ecx, dword [ebp - 0x300]
sub eax, ecx
cmp eax, 0x16
jb 0x415b41
cmp dword [ebp - 0x2fc], 0x10
lea eax, [ebp - 0x310]
push ecx
cmovae eax, dword [ebp - 0x310]
push eax
push 0x16
push str.Current_directory____
push ecx
push dword [ebp - 0x314]
mov ecx, dword [ebp - 0x320]
call fcn.0041a3f0
mov ecx, dword [ebp - 0x2fc]
cmp ecx, 0x10
jb 0x415746
mov edx, dword [ebp - 0x310]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41573c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x29c]
cmp ecx, 8
jb 0x415786
mov edx, dword [ebp - 0x2b0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x41577c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x2b4]
xor eax, eax
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 7
mov word [ebp - 0x2b0], ax
cmp ecx, 0x10
jb 0x4157dd
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4157d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
cmp eax, 0x10
jb 0x41582e
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x415824
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edi
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0x10
jb 0x4155ae
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4155a4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
jmp 0x4155a4
mov ecx, dword [ebp - 0x2b4]
cmp ecx, 0x10
jb 0x4158a5
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41589b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
cmp esi, 0x10
jb 0x4158ee
inc esi
mov eax, edi
cmp esi, 0x1000
jb 0x4158e4
mov edi, dword [eax - 4]
add esi, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push esi
push edi
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0x10
jb 0x415928
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41591e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov ecx, dword [ebp + 0x1c]
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
cmp ecx, 0x10
jb 0x41538f
mov edx, dword [ebp + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x415971
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
jmp 0x41538f
push 0x1e
push str._is_not_a_valid_cmd_command...
cmp esi, 0x10
lea eax, [ebp - 0x2f8]
push edx
cmovae eax, edi
push eax
push ecx
push dword [ebp - 0x314]
lea ecx, [ebp - 0x310]
call fcn.0041a3f0
lea eax, [ebp - 0x310]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x2e0]
call fcn.004175c0
mov ecx, dword [ebp - 0x2fc]
cmp ecx, 0x10
jb 0x4159f7
mov edx, dword [ebp - 0x310]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4159ed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
add esp, 8
mov esi, dword [ebp - 0x2e4]
mov edi, dword [ebp - 0x2f8]
mov eax, dword [ebp - 0x320]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x2b4]
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
movups xmm0, xmmword [ebp - 0x2e0]
mov byte [ebp - 0x2e0], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x2d0]
movq qword [eax + 0x10], xmm0
mov eax, 0xf
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], eax
cmp ecx, 0x10
jb 0x415a90
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x415a80
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push ecx
push edx
call fcn.0042426b
mov eax, dword [ebp - 0x2cc]
add esp, 8
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
cmp esi, 0x10
jb 0x415adb
inc esi
mov eax, edi
cmp esi, 0x1000
jb 0x415acb
mov edi, dword [eax - 4]
add esi, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
push esi
push edi
call fcn.0042426b
mov eax, dword [ebp - 0x2cc]
add esp, 8
cmp eax, 0x10
jb 0x4155ae
mov edx, dword [ebp - 0x2e0]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x4155a4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415b37
jmp 0x4155a4
call fcn.00417dc0
call fcn.0042aacf
lea ecx, [ebp - 0x2b0]
mov edx, eax
push ecx
mov ecx, str.current_path_const_path_
call fcn.00402f50
call fcn.0042aacf
call fcn.00401440
call fcn.0042aacf
call fcn.00401440
call fcn.00401440
int3