Function at 0x101a3d60
Capabilities:
Create a process with modified i/o handles and window
Create process on windows
Encode data using base64
Get common file path
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x56c
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x14], 0x101ad520
mov dword [ebp - 0xa8], ecx
mov eax, dword [ebp + 8]
mov esi, edx
mov dword [ebp - 0xb0], edx
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x18]
mov dword fs:[0], ecx
mov dword [ebp - 0x15c], eax
mov edi, dword [edx + 0x50]
movzx eax, byte [edx + 0x54]
test edi, edi
setne cl
or cl, al
call 0x101a3dbb
pop ecx
mov dword [ebp - 0x44], ecx
je 0x101a3f56
test al, al
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x124], 0
jne 0x101a3f8d
call dword [sym.imp.kernel32.dll_GetEnvironmentStringsW]
test eax, eax
je 0x101a7ce6
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0x48], edi
mov dword [ebp - 0xcc], eax
nop
lea eax, [ebp - 0xcc]
mov dword [ebp - 0x10], 5
push eax
lea eax, [ebp - 0x578]
push eax
call fcn.101a2df0
add esp, 8
mov esi, dword [ebp - 0x578]
lea ecx, [ebp - 0xf4]
lea edx, [ebp - 0x120]
mov eax, esi
neg eax
jo 0x101a3f78
movq xmm0, qword [ebp - 0x570]
mov edi, dword [ebp - 0x574]
mov dword [ebp - 0x28], esi
mov esi, dword [ebp - 0x568]
mov ebx, dword [ebp - 0x55c]
mov dword [ebp - 0x10], 7
movd eax, xmm0
mov dword [ebp - 0x2c], esi
mov esi, dword [ebp - 0x564]
mov dword [ebp - 0x120], edi
movdqu xmmword [ebp - 0x13c], xmm0
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], edi
add eax, edi
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x560]
mov word [ebp - 0x118], 0
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x38], eax
call fcn.10195620
mov eax, dword [ebp - 0x28]
movups xmm0, xmmword [ebp - 0x13c]
lea ecx, [ebp - 0x94]
mov byte [ebp - 0xb5], 0
mov dword [ebp - 0x10], 6
lea edx, [ebp - 0x12c]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xec]
movlps qword [ebp - 0x9c], xmm0
movq xmm0, qword [ebp - 0xf4]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x2c]
movq qword [ecx], xmm0
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x118], eax
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.10192290
add esp, 8
mov eax, dword [ebp - 0xf4]
test eax, 0x7fffffff
je 0x101a3e00
push 1
push eax
push dword [ebp - 0xf0]
call fcn.10013780
add esp, 0xc
jmp 0x101a3e00
mov dword [ebp - 0x16c], 0
xor ebx, ebx
lea eax, [ebp - 0x168]
mov edi, dword [esi + 0x20]
test edi, edi
jne 0x101a4733
jmp 0x101a479a
push dword [ebp - 0xd0]
call dword [sym.imp.kernel32.dll_FreeEnvironmentStringsW]
mov esi, dword [ebp - 0xb0]
mov edi, dword [ebp - 0x48]
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x4c]
xor edx, edx
test eax, eax
setne dl
cmove edi, eax
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xd8], ecx
mov dword [ebp - 0xd4], edi
jmp 0x101a3fee
push 1
push esi
push dword [ebp - 0x2c]
call fcn.10013780
add esp, 0xc
mov dword [ebp - 0x10], 1
nop word cs:[eax + eax]
nop
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x10], 1
call fcn.10190240
mov edi, eax
test eax, eax
je 0x101a4565
xor eax, eax
cmp eax, dword [edx]
jno 0x101a43c0
mov edx, dword [ebp - 0x12c]
test edx, edx
je 0x101a4000
mov eax, dword [ebp - 0x128]
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0x20], edx
push dword [edi + 0x18]
push dword [edi + 0x14]
mov dword [ebp - 0x2c], eax
push eax
call fcn.10194bf0
add esp, 0xc
cmp dword [ebp - 0xd0], 1
je 0x101a4000
mov ecx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xc4]
mov byte [ebp - 0x144], 0
test ecx, ecx
jne 0x101a40b7
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0x144]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], edx
lea ecx, [ebp - 0x578]
lea edx, [ebp - 0xa4]
push eax
call fcn.101943f0
add esp, 4
jmp 0x101a42ae
movzx edx, word [eax + 0x1ea]
mov eax, dword [eax + edx*4 + 0x1ec]
dec ecx
jne 0x101a40b0
movzx ecx, word [eax + 0x1ea]
mov dword [ebp - 0x154], eax
lea eax, [ebp - 0x144]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x10], 1
lea edx, [ebp - 0x154]
dec ecx
mov dword [ebp - 0x14c], ecx
lea ecx, [ebp - 0x578]
push eax
call fcn.101943f0
add esp, 4
movsd xmm2, qword [ebp - 0x560]
movsd xmm1, qword [ebp - 0x568]
mov eax, dword [ebp - 0x550]
movq xmm0, qword [ebp - 0x558]
mov ecx, dword [ebp - 0x544]
movsd qword [ebp - 0x108], xmm2
movsd qword [ebp - 0x110], xmm1
movsd xmm2, qword [ebp - 0x578]
movsd xmm1, qword [ebp - 0x570]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x54c]
movq qword [ebp - 0x100], xmm0
movsd qword [ebp - 0x118], xmm1
movsd qword [ebp - 0x120], xmm2
movzx edx, word [eax + 0x1ea]
cmp ecx, edx
jb 0x101a4196
nop word cs:[eax + eax]
nop
movzx ecx, word [eax + 0x1e8]
mov eax, dword [eax + 0xb0]
cmp cx, word [eax + 0x1ea]
jae 0x101a4180
lea edx, [ecx + ecx*8]
lea edx, [edx + edx*2]
add edx, ecx
shl ecx, 4
mov esi, dword [eax + edx + 0xcc]
mov dword [ebp - 0x8c], esi
mov esi, dword [ebp - 0x108]
movsd xmm0, qword [eax + edx + 0xc4]
movsd qword [ebp - 0x94], xmm0
movsd xmm0, qword [eax + edx + 0xb4]
movsd xmm1, qword [eax + edx + 0xbc]
movsd qword [ebp - 0x9c], xmm1
movsd qword [ebp - 0xa4], xmm0
mov dword [eax + edx + 0xcc], esi
lea esi, [ebp - 0x104]
movsd xmm0, qword [ebp - 0x110]
movsd qword [eax + edx + 0xc4], xmm0
movsd xmm0, qword [ebp - 0x120]
movsd xmm1, qword [ebp - 0x118]
movsd qword [eax + edx + 0xbc], xmm1
movsd qword [eax + edx + 0xb4], xmm0
lea edx, [ebp - 0x88]
movsd xmm0, qword [eax + ecx]
movsd xmm1, qword [eax + ecx + 8]
movsd qword [edx + 8], xmm1
movsd qword [edx], xmm0
movsd xmm0, qword [esi]
movsd xmm1, qword [esi + 8]
movsd qword [eax + ecx], xmm0
movsd qword [eax + ecx + 8], xmm1
movsd xmm1, qword [ebp - 0x9c]
mov eax, dword [ebp - 0x7c]
movq xmm0, qword [ebp - 0xa4]
movsd xmm2, qword [ebp - 0x8c]
movsd qword [ebp - 0x570], xmm1
movsd xmm1, qword [ebp - 0x94]
mov dword [ebp - 0x550], eax
movq qword [ebp - 0x578], xmm0
movsd qword [ebp - 0x560], xmm2
movsd qword [ebp - 0x568], xmm1
movsd xmm1, qword [ebp - 0x84]
movsd qword [ebp - 0x558], xmm1
movsd xmm2, qword [ebp - 0x560]
movsd xmm1, qword [ebp - 0x568]
mov eax, dword [ebp - 0x550]
movq xmm0, qword [ebp - 0x558]
dec dword [ebp - 0x124]
cmp byte [ebp - 0x144], 0
movsd qword [ebp - 0x8c], xmm2
movsd qword [ebp - 0x94], xmm1
movsd xmm2, qword [ebp - 0x578]
movsd xmm1, qword [ebp - 0x570]
mov dword [ebp - 0x7c], eax
movq qword [ebp - 0x84], xmm0
movsd qword [ebp - 0x9c], xmm1
movsd qword [ebp - 0xa4], xmm2
je 0x101a4351
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x101a7c4a
mov ecx, dword [ebp - 0x20]
dec edx
mov eax, dword [ecx + 0x1ec]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x128], edx
mov dword [eax + 0xb0], 0
push 4
push 0x21c
push ecx
call fcn.10013780
add esp, 0xc
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa0]
mov ebx, dword [ebp - 0x94]
mov edi, dword [ebp - 0x90]
mov esi, dword [ebp - 0x88]
mov dword [ebp - 0x2c], edx
mov edx, eax
neg edx
jo 0x101a4000
jae 0x101a4390
push 1
push eax
push ecx
call fcn.10013780
add esp, 0xc
test ebx, ebx
je 0x101a43a2
add ebx, ebx
push 2
push ebx
push edi
call fcn.10013780
add esp, 0xc
test esi, 0x7fffffff
je 0x101a4000
jmp 0x101a3fe0
mov ebx, dword [edi + 8]
test ebx, ebx
js 0x101a7bd1
mov esi, dword [edi + 4]
mov dword [ebp - 0x2c], edx
je 0x101a43ee
movzx eax, byte [0x10284b49]
push 1
push ebx
call fcn.10013770
add esp, 8
test eax, eax
jne 0x101a43f3
jmp 0x101a7c16
mov eax, 1
mov dword [ebp - 0x20], ebx
push ebx
push esi
mov dword [ebp - 0x28], eax
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ebx, dword [edi + 0x18]
xor eax, eax
lea esi, [ebx + ebx]
test ebx, ebx
js 0x101a7c00
cmp esi, 0x7ffffffe
ja 0x101a7c00
movzx eax, byte [edi + 0xc]
test esi, esi
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x30], al
mov eax, dword [edi + 0x14]
je 0x101a4461
mov dword [ebp - 0x13c], eax
movzx eax, byte [0x10284b49]
push 2
push esi
call fcn.10013770
add esp, 8
mov edi, eax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x34], ebx
test edi, edi
jne 0x101a446d
jmp 0x101a7bfb
mov edi, 2
mov dword [ebp - 0x34], 0
push esi
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x578], eax
mov dword [ebp - 0x574], ecx
mov dword [ebp - 0x570], eax
movzx eax, byte [ebp - 0x30]
mov byte [ebp - 0x56c], al
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x568], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x560], ebx
mov esi, dword [eax + 8]
test esi, esi
js 0x101a7bdc
mov ebx, dword [eax + 4]
je 0x101a44df
movzx eax, byte [0x10284b49]
push 1
push esi
call fcn.10013770
add esp, 8
mov edi, eax
test eax, eax
jne 0x101a44e4
jmp 0x101a7bd5
mov edi, 1
push esi
push ebx
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x120]
lea edx, [ebp - 0x12c]
movzx eax, byte [eax + 0xc]
mov dword [ebp - 0xa4], esi
mov dword [ebp - 0xa0], edi
mov dword [ebp - 0x9c], esi
mov byte [ebp - 0xb6], 0
mov dword [ebp - 0x10], 2
mov byte [ebp - 0x98], al
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x578]
push eax
call fcn.10192290
add esp, 8
mov eax, dword [ebp - 0x120]
test eax, 0x7fffffff
je 0x101a4000
push 1
push eax
push dword [ebp - 0x11c]
call fcn.10013780
add esp, 0xc
jmp 0x101a4000
movq xmm0, qword [ebp - 0x12c]
mov eax, dword [ebp - 0x124]
movq qword [ebp - 0x168], xmm0
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x16c], 1
movzx eax, byte [0x10284b49]
push 1
push 4
call fcn.10013770
add esp, 8
test eax, eax
je 0x101a7c6a
mov ecx, eax
mov dword [ebp - 0xa4], eax
lea edx, [ebp - 0xa4]
mov dword [eax], 0x48544150
mov dword [ebp - 0x10], 0x1a
mov dword [ebp - 0x13c], eax
add ecx, 4
mov dword [ebp - 0xa0], ecx
lea ecx, [ebp - 0x120]
mov word [ebp - 0x9c], 0
call fcn.10195620
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x578], 4
movq xmm0, qword [ebp - 0x120]
mov edx, dword [ebp - 0x168]
xor ebx, ebx
mov dword [ebp - 0x574], eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x570], 4
mov dword [ebp - 0x56c], 0
movq qword [ebp - 0x568], xmm0
test edx, edx
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x564]
mov dword [ebp - 0x20], eax
je 0x101a46f4
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x34], eax
movzx esi, word [edx + 0x1ea]
lea ecx, [edx + 0xb4]
mov ebx, 0xffffffff
mov dword [ebp - 0x30], edx
lea eax, [esi + esi*8]
mov dword [ebp - 0x38], esi
lea edi, [eax + eax*2]
add edi, esi
lea esi, [edx - 8]
nop word cs:[eax + eax]
nop dword [eax]
test edi, edi
je 0x101a46c0
lea eax, [ecx + 0x1c]
mov dword [ebp - 0x2c], eax
push 1
push dword [ecx + 0x18]
push dword [ecx + 0x14]
push dword [ebp - 0x28]
push dword [ebp - 0x20]
call dword [sym.imp.kernel32.dll_CompareStringOrdinal]
mov ecx, dword [ebp - 0x2c]
add edi, 0xffffffe4
add esi, 0x10
inc ebx
cmp eax, 3
je 0x101a4680
cmp eax, 1
jne 0x101a46e1
jmp 0x101a46c3
mov ebx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
sub eax, 1
jb 0x101a4c45
mov edx, dword [edx + ebx*4 + 0x1ec]
mov dword [ebp - 0x34], eax
jmp 0x101a464f
cmp eax, 2
jne 0x101a7b54
mov ebx, dword [esi - 4]
mov eax, dword [esi]
mov dword [ebp - 0x28], eax
jmp 0x101a46f4
mov esi, dword [ebp - 0xb0]
push 1
push 4
push dword [ebp - 0x13c]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x568]
test eax, eax
je 0x101a4726
add eax, eax
push 2
push eax
push dword [ebp - 0x20]
call fcn.10013780
add esp, 0xc
lea eax, [ebp - 0x168]
mov edi, dword [esi + 0x20]
test edi, edi
je 0x101a479a
mov edx, dword [esi + 0x1c]
mov dword [ebp - 0xac], eax
mov eax, 0x101ab770
cmp edi, 4
mov dword [ebp - 0x2c], ebx
jb 0x101a4773
mov eax, dword [edx]
xor ecx, ecx
mov dword [ebp - 0x10], 9
bswap eax
cmp eax, 0x5c5c3f5c
setb cl
cmp eax, 0x5c5c3f5d
mov eax, 0x101ab770
adc ecx, 0xffffffff
mov ecx, 0x101ab790
cmove eax, ecx
movzx ecx, byte [edi + edx - 1]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x30], edi
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x10], 9
mov dword [ebp - 0x20], ecx
push ecx
call eax
add esp, 4
test al, al
je 0x101a482d
mov byte [ebp - 0xcc], 2
mov dword [ebp - 0xc8], 0x1024a640
mov ebx, dword [ebp - 0xcc]
mov edi, dword [ebp - 0xc8]
mov eax, dword [ebp - 0xa8]
mov dword [eax + 4], edi
mov dword [eax], ebx
mov dword [eax + 8], 2
cmp dword [ebp - 0x16c], 0
je 0x101a48e6
mov ecx, dword [ebp - 0x168]
test ecx, ecx
je 0x101a48be
mov edx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x574], 0
mov dword [ebp - 0x570], ecx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x56c], edx
mov dword [ebp - 0x564], 0
mov dword [ebp - 0x560], ecx
mov ecx, 1
mov dword [ebp - 0x55c], edx
jmp 0x101a48c2
mov eax, dword [ebp - 0x30]
mov edi, dword [ebp - 0x54]
lea ebx, [edi + eax]
cmp eax, 3
mov dword [ebp - 0x3c], ebx
jbe 0x101a490f
movzx eax, byte [ebx - 4]
mov ecx, eax
add cl, 0xbf
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
xor eax, eax
cmp cl, 0x2e
mov ecx, 0
jne 0x101a4950
movzx ecx, byte [ebx - 3]
mov edx, ecx
add dl, 0xbf
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x65
jne 0x101a4940
movzx ecx, byte [ebx - 2]
mov edx, ecx
add dl, 0xbf
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x78
jne 0x101a4944
mov edx, dword [ebp - 0x20]
mov ecx, edx
add cl, 0xbf
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, dl
cmp cl, 0x65
sete cl
jmp 0x101a4950
xor ecx, ecx
xor eax, eax
mov dword [ebp - 0x578], ecx
mov dword [ebp - 0x568], ecx
lea ecx, [ebp - 0x578]
mov dword [ebp - 0x558], eax
mov dword [ebp - 0x10], 0
call fcn.10191330
cmp dword [ebp - 0x15c], 4
jb 0x101a48fb
push dword [ebp - 0x158]
call dword [sym.imp.kernel32.dll_CloseHandle]
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
add esp, 0x56c
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, edi
nop word cs:[eax + eax]
nop dword [eax + eax]
test eax, eax
je 0x101a4abe
movzx edx, byte [ecx]
cmp edx, 0x2f
je 0x101a49c1
inc ecx
dec eax
cmp edx, 0x5c
jne 0x101a4920
jmp 0x101a49c1
xor ecx, ecx
jmp 0x101a4950
xor ecx, ecx
nop word cs:[eax + eax]
cmp dword [ebp - 0x30], eax
je 0x101a4abe
movzx edx, byte [edi + eax]
cmp edx, 0x2f
je 0x101a4968
inc eax
cmp edx, 0x5c
jne 0x101a4950
test cl, cl
je 0x101a49c1
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x10], 9
lea ecx, [ebp - 0x578]
mov edx, edi
push dword [ebp - 0x30]
call fcn.101aab20
add esp, 4
mov edx, dword [ebp - 0x578]
mov eax, dword [ebp - 0x574]
mov ecx, edx
neg ecx
mov ecx, dword [ebp - 0x570]
jno 0x101a4c19
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xd0], 0x80000000
jmp 0x101a4d56
mov esi, dword [ebp - 0x30]
test esi, esi
js 0x101a7d63
movzx eax, byte [0x10284b49]
push 1
push esi
call fcn.10013770
add esp, 8
test eax, eax
je 0x101a7d67
mov ebx, eax
push esi
push edi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [ebp - 0x578], esi
mov dword [ebp - 0x574], ebx
mov dword [ebp - 0x570], esi
mov dword [ebp - 0x56c], 0
mov dword [ebp - 0x10], 0x18
lea eax, [ebp - 0x578]
push 4
push str..exeprogram_not_found
push eax
mov dword [ebp - 0x2c], ebx
call fcn.101ab570
add esp, 0xc
mov eax, dword [ebp - 0x578]
mov edx, dword [ebp - 0x574]
mov esi, dword [ebp - 0x570]
mov byte [ebp - 0xb7], 1
mov dword [ebp - 0x10], 0x17
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x174], edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x20], esi
push esi
call fcn.101a8890
add esp, 4
xor eax, eax
cmp eax, dword [ebp - 0xa4]
jno 0x101a4b9c
mov dword [ebp - 0x10], 0x19
push dword [ebp - 0x20]
push dword [ebp - 0x2c]
call fcn.1019c300
add esp, 8
test eax, eax
je 0x101a4cd3
cmp edx, 2
jne 0x101a4bbd
cmp word [eax], 0x2e2e
jne 0x101a4bbd
mov edi, 2
xor ecx, ecx
jmp 0x101a4c7f
xor esi, esi
mov eax, edi
jmp 0x101a4adb
xor esi, esi
test dx, dx
je 0x101a4b83
mov dx, 1
test si, si
jne 0x101a4ad0
cmp eax, ebx
je 0x101a4bf8
movzx ebx, byte [eax]
movzx ecx, bl
test bl, bl
js 0x101a4afc
mov ebx, dword [ebp - 0x3c]
inc eax
jmp 0x101a4b51
movzx edi, byte [eax + 1]
and ecx, 0x1f
and edi, 0x3f
cmp bl, 0xdf
jbe 0x101a4b43
movzx esi, byte [eax + 2]
shl edi, 6
and esi, 0x3f
or esi, edi
cmp bl, 0xf0
jb 0x101a4b5a
movzx edi, byte [eax + 3]
and ecx, 7
shl esi, 6
add eax, 4
shl ecx, 0x12
and edi, 0x3f
or edi, esi
or ecx, edi
mov edi, dword [ebp - 0x54]
mov ebx, dword [ebp - 0x3c]
cmp ecx, 0xffff
jbe 0x101a4b51
jmp 0x101a4b70
shl ecx, 6
mov ebx, dword [ebp - 0x3c]
add eax, 2
or ecx, edi
mov edi, dword [ebp - 0x54]
xor esi, esi
mov edx, ecx
jmp 0x101a4ad2
shl ecx, 0xc
add eax, 3
or ecx, esi
mov edi, dword [ebp - 0x54]
mov ebx, dword [ebp - 0x3c]
cmp ecx, 0xffff
jbe 0x101a4b51
and ecx, 0x3ff
or ecx, 0xdc00
mov esi, ecx
jmp 0x101a4ad2
mov dword [ebp - 0xcc], 2
mov dword [ebp - 0xc8], 0x1024a614
jmp 0x101a47ab
mov eax, dword [ebp - 0x9c]
movq xmm0, qword [ebp - 0xa4]
mov dword [ebp - 0xc8], eax
movq qword [ebp - 0xd0], xmm0
jmp 0x101a4d41
xor ebx, ebx
mov edi, eax
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp edx, ebx
je 0x101a4c52
cmp byte [edi + edx - 1], 0x2e
lea ecx, [edi - 1]
mov esi, ebx
lea ebx, [ebx + 1]
mov edi, ecx
jne 0x101a4bd0
mov edi, edx
sub edi, ebx
jne 0x101a4c7b
xor ecx, ecx
mov edi, edx
jmp 0x101a4c7f
mov ecx, dword [ebp - 0x30]
cmp ecx, 7
ja 0x101a4c5c
cmp byte [edi], 0x2e
je 0x101a536e
inc edi
dec ecx
jne 0x101a4c00
mov dword [ebp - 0x50], 0
jmp 0x101a5375
mov dword [ebp - 0x578], edx
mov dword [ebp - 0x570], ecx
lea ecx, [ebp - 0xd0]
lea edx, [ebp - 0x578]
mov dword [ebp - 0x574], eax
mov byte [ebp - 0x21], 1
call fcn.101a0d60
jmp 0x101a4d56
mov esi, dword [ebp - 0xb0]
xor ebx, ebx
jmp 0x101a46fa
mov ecx, eax
mov esi, edx
mov edi, edx
xor eax, eax
jmp 0x101a4c7f
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x10], 9
push ecx
push edi
push 0x2e
call fcn.101bc540
add esp, 0xc
mov dword [ebp - 0x50], eax
jmp 0x101a5375
lea ecx, [ecx + edx + 1]
test eax, eax
cmovne ecx, eax
test ecx, ecx
je 0x101a4cd3
test eax, eax
cmove edi, esi
add ecx, edi
sub ecx, dword [ebp - 0x2c]
je 0x101a4cc9
cmp dword [ebp - 0x20], ecx
jbe 0x101a4cc2
mov eax, dword [ebp - 0x2c]
cmp byte [eax + ecx], 0xbf
jg 0x101a4cc4
mov dword [ebp - 0x10], 0x19
push 0x10249b90
push 0x37
push 0x10249b56
call fcn.101cc940
add esp, 0xc
jmp 0x101a7ded
jne 0x101a4ca2
cmp dword [ebp - 0x20], ecx
jb 0x101a4cd3
mov dword [ebp - 0x10], 0x19
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x10], 0x19
lea ecx, [ebp - 0x578]
push dword [ebp - 0x20]
call fcn.101aab20
add esp, 4
mov edx, dword [ebp - 0x578]
mov eax, dword [ebp - 0x574]
mov ecx, edx
neg ecx
mov ecx, dword [ebp - 0x570]
jno 0x101a4d1e
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xd0], 0x80000000
jmp 0x101a4d41
mov dword [ebp - 0x578], edx
mov dword [ebp - 0x570], ecx
lea ecx, [ebp - 0xd0]
lea edx, [ebp - 0x578]
mov dword [ebp - 0x574], eax
call fcn.101a0d60
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x101a4d56
push 1
push eax
push dword [ebp - 0x2c]
call fcn.10013780
add esp, 0xc
mov esi, dword [ebp - 0xd0]
mov ebx, dword [ebp - 0xcc]
mov edi, dword [ebp - 0xc8]
mov eax, esi
neg eax
jo 0x101a47b7
cmp edi, 4
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x38], edi
jb 0x101a4dab
mov ecx, 0x5c005c
mov edx, dword [ebx + 4]
mov eax, 0x5c003f
xor ecx, dword [ebx]
xor edx, eax
or edx, ecx
je 0x101a5065
mov ecx, 0x3f005c
xor eax, dword [ebx + 4]
xor ecx, dword [ebx]
or eax, ecx
je 0x101a5065
mov ebx, 0x200
xor edi, edi
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 2
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x30], 2
cmp ebx, 0x201
jb 0x101a4dfe
jmp 0x101a4e20
jbe 0x101a4ebe
cmp ebx, 0x201
jae 0x101a4e20
lea eax, [ebp - 0x578]
mov esi, ebx
mov dword [ebp - 0x20], 0x200
mov ebx, eax
jmp 0x101a4e5d
sub ebx, edi
je 0x101a4e4f
mov dword [ebp - 0x10], 0x1f
lea ecx, [ebp - 0xa4]
mov edx, edi
push 2
push 2
push ebx
call fcn.101cb480
add esp, 0xc
mov edi, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x30]
mov esi, edi
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x20], edi
push 0
call dword [sym.imp.kernel32.dll_SetLastError]
push 0
mov dword [ebp - 0x28], ebx
push ebx
push esi
push dword [ebp - 0x2c]
call dword [sym.imp.kernel32.dll_GetFullPathNameW]
mov ebx, eax
test eax, eax
jne 0x101a4e89
call dword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x101a5247
cmp ebx, esi
jne 0x101a4df0
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x101a7c2a
lea ebx, [esi + esi]
test esi, esi
mov eax, 0xffffffff
cmovs ebx, eax
cmp ebx, 0x201
jae 0x101a4e20
jmp 0x101a4dfe
mov eax, dword [ebp - 0x20]
cmp ebx, eax
ja 0x101a7d85
cmp ebx, 4
jb 0x101a4f3e
mov eax, dword [ebp - 0x28]
cmp word [eax + ebx*2 - 8], 0x2e
jne 0x101a4f3e
movzx eax, word [eax + ebx*2 - 6]
lea ecx, [eax - 0x42]
cmp ecx, 0x21
ja 0x101a4f3e
mov edx, dword [ebp - 0x44]
add edx, dword [ecx*4 + 0x101a8774]
xor ecx, ecx
jmp edx
xor ecx, ecx
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x101a4f61
add eax, eax
push 2
push eax
push dword [ebp - 0xa0]
mov esi, ecx
call fcn.10013780
mov ecx, esi
add esp, 0xc
test cl, cl
je 0x101a50cf
mov edx, 0x200
xor edi, edi
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 2
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x30], 2
cmp edx, 0x201
jb 0x101a4fae
jmp 0x101a4fc0
jbe 0x101a52d8
cmp edx, 0x201
jae 0x101a4fc0
mov dword [ebp - 0x28], 0x200
lea ebx, [ebp - 0x578]
mov esi, edx
jmp 0x101a4fff
sub edx, edi
je 0x101a4ff1
mov eax, edx
mov dword [ebp - 0x10], 0x1e
lea ecx, [ebp - 0xa4]
mov edx, edi
push 2
push 2
push eax
call fcn.101cb480
add esp, 0xc
mov edi, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x30]
mov esi, edi
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x28], edi
push 0
call dword [sym.imp.kernel32.dll_SetLastError]
push esi
mov dword [ebp - 0x20], ebx
push ebx
call dword [sym.imp.kernel32.dll_GetSystemDirectoryW]
mov edx, eax
test eax, eax
jne 0x101a5030
mov dword [ebp - 0x34], edi
mov ebx, edx
call dword [sym.imp.kernel32.dll_GetLastError]
mov edi, dword [ebp - 0x34]
mov edx, ebx
test eax, eax
jne 0x101a533f
cmp edx, esi
jne 0x101a4fa0
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x101a7c86
lea edx, [esi + esi]
test esi, esi
mov eax, 0xffffffff
cmovs edx, eax
cmp edx, 0x201
jae 0x101a4fc0
jmp 0x101a4fae
cmp edi, 4
je 0x101a50cf
cmp word [ebx + edi*2 - 0xa], 0x2e
jne 0x101a50cf
movzx eax, word [ebx + edi*2 - 8]
lea ecx, [eax - 0x42]
cmp ecx, 0x21
ja 0x101a50cf
mov edx, dword [ebp - 0x44]
add edx, dword [ecx*4 + 0x101a87fc]
jmp edx
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 2
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x10], 0x1c
mov ecx, dword [eax + 0x2c]
mov dword [ebp - 0x20], ecx
mov ecx, dword [eax + 0x30]
movzx eax, byte [eax + 0x69]
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0xa4]
mov byte [ebp - 0x30], al
call fcn.10195060
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x3c]
mov word [eax], 0x22
mov dword [ebp - 0x578], edx
mov dword [ebp - 0x574], ecx
lea ecx, [ebp - 0xa4]
lea edx, [ebp - 0x578]
mov dword [ebp - 0x9c], 1
mov word [ebp - 0x570], 0
call fcn.101954b0
mov esi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x9c]
cmp ecx, dword [ebp - 0xa4]
jne 0x101a517e
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xa4]
call fcn.10195060
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa0]
mov word [eax + ecx*2], 0x22
mov eax, dword [ebp - 0x28]
inc ecx
mov dword [ebp - 0x9c], ecx
movzx ecx, byte [ebp - 0x30]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], eax
cmp esi, dword [ebp - 0x28]
je 0x101a5214
nop dword [eax]
mov ecx, dword [ebp - 0x9c]
mov dword [ebp - 0x20], esi
cmp ecx, dword [ebp - 0xa4]
jne 0x101a51d5
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xa4]
call fcn.10195060
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0xa4]
mov word [eax + ecx*2], 0x20
inc ecx
mov dword [ebp - 0x9c], ecx
lea ecx, [ebp - 0x120]
push dword [ebp - 0x30]
push esi
call fcn.101a08f0
mov esi, dword [ebp - 0x20]
add esp, 8
cmp byte [ebp - 0x120], 4
jne 0x101a5277
add esi, 0x14
cmp esi, dword [ebp - 0x28]
jne 0x101a51b0
mov eax, dword [ebp - 0xa4]
mov edi, dword [ebp - 0xa0]
mov esi, dword [ebp - 0x9c]
mov ecx, eax
neg ecx
jo 0x101a52a0
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0x54], edx
jmp 0x101a5dd7
call dword [sym.imp.kernel32.dll_GetLastError]
mov esi, eax
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x101a526c
add eax, eax
push 2
push eax
push dword [ebp - 0xa0]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0xa8]
mov byte [eax], 0
jmp 0x101a52a8
mov eax, dword [ebp - 0xa4]
mov edi, dword [ebp - 0x120]
mov esi, dword [ebp - 0x11c]
test eax, eax
je 0x101a52a0
add eax, eax
push 2
push eax
push dword [ebp - 0xa0]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0xa8]
mov dword [eax], edi
mov edi, dword [ebp - 0x48]
mov dword [eax + 4], esi
mov dword [eax + 8], 2
mov bl, 1
test edi, edi
je 0x101a52cb
add edi, edi
push 2
push edi
push dword [ebp - 0x2c]
call fcn.10013780
add esp, 0xc
test bl, bl
jne 0x101a47c9
jmp 0x101a48e6
mov eax, dword [ebp - 0x28]
cmp edx, eax
ja 0x101a7d9d
mov ebx, dword [ebp - 0x20]
xor eax, eax
lea edi, [edx + edx]
test edx, edx
js 0x101a5329
cmp edi, 0x7ffffffe
ja 0x101a5329
test edi, edi
mov dword [ebp - 0x30], edx
je 0x101a589c
movzx eax, byte [0x10284b49]
push 2
push edi
call fcn.10013770
add esp, 8
mov ecx, dword [ebp - 0x30]
mov esi, eax
test eax, eax
mov dword [ebp - 0x28], ecx
jne 0x101a58a8
mov eax, 2
mov dword [ebp - 0x10], 0x1e
push edi
push eax
call fcn.101cc661
add esp, 8
jmp 0x101a7ded
call dword [sym.imp.kernel32.dll_GetLastError]
mov esi, eax
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x101a5364
add eax, eax
push 2
push eax
push dword [ebp - 0xa0]
call fcn.10013780
add esp, 0xc
mov edi, dword [ebp - 0x48]
xor ecx, ecx
jmp 0x101a5a93
mov dword [ebp - 0x50], 1
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x10], 9
test eax, eax
je 0x101a57a1
add ecx, eax
mov dword [ebp - 0x120], eax
lea eax, [ebp - 0x120]
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x11c], ecx
mov word [ebp - 0x118], 0
mov byte [ebp - 0x114], 1
lea ecx, [ebp - 0xa4]
push eax
push ecx
call fcn.101a2fd0
add esp, 8
mov edi, dword [ebp - 0xa4]
mov ecx, edi
neg ecx
jo 0x101a579a
movzx ecx, byte [ebp - 0x114]
mov eax, dword [ebp - 0x11c]
movzx esi, word [ebp - 0x118]
mov ebx, dword [ebp - 0x120]
mov byte [ebp - 0x5c], cl
mov dword [ebp - 0x28], eax
jmp 0x101a5431
mov dword [ebp - 0xa4], 0x80000000
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x101a541b
add eax, eax
push 2
push eax
push dword [ebp - 0xf0]
call fcn.10013780
add esp, 0xc
mov edi, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x34]
mov ecx, edi
mov byte [ebp - 0x5c], al
neg ecx
jo 0x101a579a
mov edx, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0xa0]
test edx, edx
jne 0x101a56c2
test edi, edi
je 0x101a5455
push 1
push edi
push ecx
call fcn.10013780
add esp, 0xc
mov ecx, dword [ebp - 0x28]
xor eax, eax
mov edi, esi
xor edx, edx
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 2
mov dword [ebp - 0x38], 2
jmp 0x101a5498
mov edi, eax
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov word [eax + edi*2], cx
mov eax, edi
mov ecx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x13c]
inc eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0xec], eax
mov eax, edi
test di, di
je 0x101a54d0
nop dword [eax + eax]
xor esi, esi
xor edi, edi
cmp ax, 0x22
je 0x101a55b0
jmp 0x101a55d0
cmp ebx, ecx
je 0x101a5640
mov edi, edx
movzx edx, byte [ebx]
movzx eax, dl
test dl, dl
js 0x101a5500
mov edx, edi
inc ebx
xor edi, edi
cmp ax, 0x22
je 0x101a55b0
jmp 0x101a55d0
mov dword [ebp - 0x2c], esi
movzx esi, byte [ebx + 1]
and eax, 0x1f
and esi, 0x3f
cmp dl, 0xdf
jbe 0x101a5570
movzx ecx, byte [ebx + 2]
shl esi, 6
and ecx, 0x3f
or ecx, esi
cmp dl, 0xf0
jb 0x101a5587
movzx edx, byte [ebx + 3]
and eax, 7
shl ecx, 6
add ebx, 4
shl eax, 0x12
and edx, 0x3f
or edx, ecx
or eax, edx
mov esi, dword [ebp - 0x2c]
mov edx, edi
cmp eax, 0xffff
jbe 0x101a559b
lea ecx, [eax + 0xff0000]
and eax, 0x3ff
shr ecx, 0xa
or eax, 0xdc00
or ecx, 0xd800
mov esi, eax
mov edi, eax
mov eax, ecx
mov ecx, dword [ebp - 0x28]
cmp ax, 0x22
je 0x101a55b0
jmp 0x101a55d0
shl eax, 6
mov edx, edi
add ebx, 2
xor edi, edi
or eax, esi
mov esi, dword [ebp - 0x2c]
cmp ax, 0x22
je 0x101a55b0
jmp 0x101a55d0
shl eax, 0xc
add ebx, 3
or eax, ecx
mov esi, dword [ebp - 0x2c]
mov edx, edi
cmp eax, 0xffff
ja 0x101a5546
mov ecx, dword [ebp - 0x28]
xor edi, edi
cmp ax, 0x22
jne 0x101a55d0
nop word cs:[eax + eax]
xor dl, 1
mov eax, edi
test di, di
jne 0x101a54b0
jmp 0x101a54d0
movzx ecx, ax
cmp ecx, 0x3b
jne 0x101a55e1
test dl, 1
je 0x101a56bb
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x13c], edi
cmp eax, dword [ebp - 0xf4]
jne 0x101a5480
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x10], 0x16
call fcn.10195060
mov eax, dword [ebp - 0xf0]
mov ebx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x20]
jmp 0x101a5480
mov dword [ebp - 0x34], 0
mov edx, dword [ebp - 0x20]
movzx ecx, byte [ebp - 0x5c]
test edx, edx
setne al
or cl, al
test cl, 1
je 0x101a53f4
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x10], 0x16
push edx
push eax
lea eax, [ebp - 0x578]
push eax
call fcn.1019a100
add esp, 0xc
movq xmm0, qword [ebp - 0x578]
movsd xmm1, qword [ebp - 0x570]
mov ebx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x2c]
movsd qword [ebp - 0x9c], xmm1
movq qword [ebp - 0xa4], xmm0
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x101a5408
jmp 0x101a541b
mov al, 1
mov dword [ebp - 0x34], eax
jmp 0x101a5647
movzx eax, byte [ebp - 0x5c]
mov dword [ebp - 0x578], edi
mov dword [ebp - 0x574], ecx
mov dword [ebp - 0x570], edx
mov dword [ebp - 0x10], 0x15
mov byte [ebp - 0x114], al
mov eax, dword [ebp - 0x98]
mov word [ebp - 0x118], si
mov dword [ebp - 0x120], ebx
mov dword [ebp - 0x56c], eax
push dword [ebp - 0x30]
push dword [ebp - 0x54]
lea eax, [ebp - 0x578]
push eax
call fcn.1019b140
add esp, 0xc
cmp dword [ebp - 0x50], 1
je 0x101a572f
push 3
push str.exe.NULcmd.exestd_src_syspalwindows_stdio.rs
lea eax, [ebp - 0x578]
push eax
call fcn.1019bde0
add esp, 0xc
mov edx, dword [ebp - 0x574]
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x2c], edx
push dword [ebp - 0x570]
call fcn.101a8890
add esp, 4
mov eax, dword [ebp - 0x578]
test eax, eax
je 0x101a5764
push 1
push eax
push dword [ebp - 0x2c]
call fcn.10013780
add esp, 0xc
mov esi, dword [ebp - 0xa4]
mov eax, esi
neg eax
jno 0x101a77e1
lea eax, [ebp - 0x120]
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x10], 9
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.101a2fd0
add esp, 8
jmp 0x101a53c2
mov dword [ebp - 0x10], 9
lea ecx, [ebp - 0xa4]
mov byte [ebp - 0x21], 1
call fcn.101a3280
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x2c], eax
neg eax
jno 0x101a5821
cmp byte [ebp - 0xa0], 3
jne 0x101a6730
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [eax + 4]
mov dword [ebp - 0x20], eax
mov eax, dword [eax]
mov dword [ebp - 0x2c], ecx
test eax, eax
je 0x101a57f3
mov dword [ebp - 0x10], 0x12
push dword [ebp - 0x2c]
call eax
add esp, 4
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [edx + 4]
test eax, eax
je 0x101a580d
push dword [edx + 8]
push eax
push ecx
call fcn.10013780
add esp, 0xc
push 4
push 0xc
push dword [ebp - 0x28]
call fcn.10013780
add esp, 0xc
jmp 0x101a6730
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x98]
mov byte [ebp - 0x5d], 0
mov dword [ebp - 0x10], 0x13
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x28], edx
push edx
mov dword [ebp - 0x20], eax
push eax
call fcn.1019c1c0
add esp, 8
test eax, eax
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x30]
je 0x101a5d8b
mov edi, dword [ebp - 0x28]
test edx, edx
je 0x101a6694
cmp edi, edx
jbe 0x101a668a
mov esi, dword [ebp - 0x20]
cmp byte [esi + edx], 0xbf
jg 0x101a6690
mov byte [ebp - 0x5d], 0
push 0x10249b90
push 0x37
push 0x10249b56
call fcn.101cc940
add esp, 0xc
jmp 0x101a7ded
mov esi, 2
mov dword [ebp - 0x28], 0
push edi
push ebx
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x101a58d0
add eax, eax
push 2
push eax
push dword [ebp - 0xa0]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x30]
mov edi, 0x1024a67a
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], esi
mov dword [ebp - 0x118], edx
jmp 0x101a5901
mov eax, dword [ebp - 0x20]
mov word [esi + edx*2], ax
inc edx
mov dword [ebp - 0x118], edx
test edi, edi
je 0x101a5960
test cx, cx
je 0x101a5947
mov eax, ecx
xor ecx, ecx
cmp edx, dword [ebp - 0x120]
mov dword [ebp - 0x20], eax
jne 0x101a58f3
mov eax, 0x1024a67a
mov esi, edx
mov edx, 0xaaaaaaab
mov dword [ebp - 0x10], 0x1d
sub eax, edi
add eax, 0xa
mul edx
mov eax, edx
mov edx, ebx
shr eax, 1
cmp cx, 1
adc edx, 0xffffffff
sub eax, edx
mov edx, esi
inc eax
jmp 0x101a598b
lea eax, [0x1024a682]
cmp edi, eax
je 0x101a5960
movzx ecx, byte [edi]
movzx eax, cl
test cl, cl
js 0x101a59cf
inc edi
xor ecx, ecx
jmp 0x101a590e
cmp ebx, 1
je 0x101a5a69
cmp edx, dword [ebp - 0x120]
mov ebx, 1
mov edi, 0
mov eax, 0
mov dword [ebp - 0x20], 0
jne 0x101a58f3
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x28], ebx
inc eax
mov dword [ebp - 0x10], 0x1d
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x30], edx
push 2
push 2
push eax
call fcn.101cb480
add esp, 0xc
mov esi, dword [ebp - 0x11c]
mov edx, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x13c]
jmp 0x101a58f3
mov dword [ebp - 0x28], ebx
mov ebx, edx
movzx edx, byte [edi + 1]
and eax, 0x1f
and edx, 0x3f
cmp cl, 0xdf
jbe 0x101a5a15
mov dword [ebp - 0x20], eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
cmp cl, 0xf0
jb 0x101a5a29
mov edx, dword [ebp - 0x20]
movzx ecx, byte [edi + 3]
shl eax, 6
add edi, 4
and edx, 7
and ecx, 0x3f
shl edx, 0x12
or ecx, eax
mov eax, edx
or eax, ecx
jmp 0x101a5a36
shl eax, 6
add edi, 2
xor ecx, ecx
or eax, edx
mov edx, ebx
mov ebx, dword [ebp - 0x28]
jmp 0x101a590e
mov ecx, dword [ebp - 0x20]
add edi, 3
shl ecx, 0xc
or ecx, eax
mov eax, ecx
mov edx, ebx
mov ebx, dword [ebp - 0x28]
cmp eax, 0xffff
ja 0x101a5a49
xor ecx, ecx
jmp 0x101a590e
mov ecx, eax
add eax, 0xff0000
shr eax, 0xa
and ecx, 0x3ff
or eax, 0xd800
or ecx, 0xdc00
jmp 0x101a590e
mov ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x54], ecx
mov ecx, ecx
mov dword [ebp - 0xc0], eax
neg ecx
jno 0x101a5aac
mov esi, dword [ebp - 0x118]
mov edi, dword [ebp - 0x48]
mov ecx, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xa8]
mov bl, 1
mov dword [eax + 4], esi
mov dword [eax], ecx
mov dword [eax + 8], 2
jmp 0x101a52b7
xor eax, eax
mov esi, 0x14
test al, al
jne 0x101a7ddc
mov ecx, dword [ebp - 0xb0]
mov eax, dword [ecx + 0x2c]
mov dword [ebp - 0x13c], eax
mov eax, dword [ecx + 0x30]
mov dword [ebp - 0x3c], eax
movzx eax, byte [ecx + 0x69]
mov byte [ebp - 0x50], al
movzx eax, byte [0x10284b49]
push 2
push esi
call fcn.10013770
add esp, 8
test eax, eax
je 0x101a7dd7
mov ecx, 0xa
lea ebx, [0x1024a298]
mov esi, 1
xor edi, edi
mov word [eax], 0x63
mov dword [ebp - 0x578], ecx
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x574], eax
mov dword [ebp - 0x570], 1
jmp 0x101a5b3d
mov word [eax + esi*2], di
inc esi
mov edi, edx
mov dword [ebp - 0x570], esi
test di, di
je 0x101a5b60
xor edx, edx
cmp esi, dword [ebp - 0x578]
jne 0x101a5b30
jmp 0x101a5c40
lea edx, [0x1024a2b3]
cmp ebx, edx
je 0x101a5ca3
movzx edx, byte [ebx]
movzx edi, dl
test dl, dl
js 0x101a5b88
inc ebx
xor edx, edx
cmp esi, dword [ebp - 0x578]
jne 0x101a5b30
jmp 0x101a5c40
mov dword [ebp - 0x20], esi
movzx esi, byte [ebx + 1]
and edi, 0x1f
and esi, 0x3f
cmp dl, 0xdf
jbe 0x101a5bfd
movzx ecx, byte [ebx + 2]
shl esi, 6
and ecx, 0x3f
or ecx, esi
cmp dl, 0xf0
jb 0x101a5c17
movzx edx, byte [ebx + 3]
and edi, 7
shl ecx, 6
add ebx, 4
shl edi, 0x12
and edx, 0x3f
or edx, ecx
or edi, edx
mov esi, dword [ebp - 0x20]
cmp edi, 0xffff
jbe 0x101a5c2a
lea ecx, [edi + 0xff0000]
and edi, 0x3ff
shr ecx, 0xa
or edi, 0xdc00
or ecx, 0xd800
mov edx, edi
mov edi, ecx
mov ecx, dword [ebp - 0x38]
cmp esi, dword [ebp - 0x578]
jne 0x101a5b30
jmp 0x101a5c40
shl edi, 6
add ebx, 2
xor edx, edx
or edi, esi
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x578]
je 0x101a5c40
jmp 0x101a5b30
shl edi, 0xc
add ebx, 3
or edi, ecx
mov esi, dword [ebp - 0x20]
cmp edi, 0xffff
ja 0x101a5bcd
mov ecx, dword [ebp - 0x38]
xor edx, edx
cmp esi, dword [ebp - 0x578]
jne 0x101a5b30
nop dword [eax + eax]
mov eax, 0x1024a297
mov ecx, 0xaaaaaaab
mov dword [ebp - 0x30], edi
mov edi, edx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x10], 0x22
mov dword [ebp - 0x20], esi
sub eax, ebx
mov dword [ebp - 0x34], edi
add eax, 0x1e
mul ecx
lea ecx, [ebp - 0x578]
mov eax, edx
mov edx, esi
shr eax, 1
cmp di, 1
sbb eax, 0
add eax, 2
push 2
push 2
push eax
call fcn.101cb480
add esp, 0xc
mov eax, dword [ebp - 0x574]
mov ecx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x30]
mov edx, dword [ebp - 0x34]
jmp 0x101a5b30
movq xmm0, qword [ebp - 0x578]
mov ebx, dword [ebp - 0x570]
movq qword [ebp - 0xa4], xmm0
mov dword [ebp - 0x9c], ebx
cmp ebx, dword [ebp - 0xa4]
jne 0x101a5ce2
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x10], 0x21
mov dword [ebp - 0x20], ebx
call fcn.10195060
mov ebx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x2c]
mov edi, ecx
lea eax, [ecx + ecx]
xor ecx, ecx
mov word [esi + ebx*2], 0x22
inc ebx
mov dword [ebp - 0x9c], ebx
cmp eax, ecx
je 0x101a5d93
cmp word [edx + ecx], 0x22
lea ecx, [ecx + 2]
jne 0x101a5cff
xor esi, esi
mov dword [ebp - 0x20], 0x1024a318
mov ebx, 2
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x101a5d3c
add eax, eax
push 2
push eax
push dword [ebp - 0xa0]
call fcn.10013780
add esp, 0xc
mov eax, 0x80000000
and esi, 0xffffff00
movzx edi, bl
mov ecx, eax
or edi, esi
neg ecx
jno 0x101a5dcf
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0x20]
mov bl, 1
mov dword [eax], edi
mov dword [eax + 4], ecx
mov dword [eax + 8], 2
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x101a5d83
add eax, eax
push 2
push eax
push dword [ebp - 0xc0]
call fcn.10013780
add esp, 0xc
mov edi, dword [ebp - 0x48]
jmp 0x101a52b7
mov edi, dword [ebp - 0x28]
jmp 0x101a6696
xor eax, eax
mov ecx, edi
sub edi, 1
jb 0x101a6f39
movzx eax, word [edx + edi*2]
cmp ax, 0x5c
jne 0x101a6f2e
mov dword [ebp - 0x20], str.Windows_file_names_may_not_contain_____or_end_with___
mov ebx, 2
xor esi, esi
mov eax, dword [ebp - 0xa4]
test eax, eax
jne 0x101a5d29
jmp 0x101a5d3c
mov esi, dword [ebp - 0x20]
mov cl, 1
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0xb0]
cmp eax, esi
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x128], edi
mov dword [ebp - 0x124], esi
jne 0x101a5e1b
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x20], esi
mov byte [ebp - 0x55], 1
mov dword [ebp - 0x10], 0x23
call fcn.10195060
mov edi, dword [ebp - 0x128]
mov ecx, dword [ebp - 0xb0]
mov esi, dword [ebp - 0x20]
mov word [edi + esi*2], 0
inc esi
mov eax, 0x608
mov edx, 0x400
cmp byte [ecx + 0x68], 0
mov dword [ebp - 0x124], esi
cmovne edx, eax
or edx, dword [ecx + 0x58]
test byte [ebp - 0x16c], 1
mov dword [ebp - 0x38], edx
je 0x101a62d2
mov eax, dword [ebp - 0xac]
mov ecx, 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 2
mov dword [ebp - 0xec], 0
mov dword [ebp - 0x20], 0
mov esi, dword [eax + 8]
movq xmm0, qword [eax]
mov eax, 2
test esi, esi
mov dword [ebp - 0xc8], esi
movq qword [ebp - 0xd0], xmm0
jne 0x101a5ed0
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x28], esi
mov byte [ebp - 0x49], 1
mov dword [ebp - 0x10], 0x24
call fcn.10195060
mov eax, dword [ebp - 0xf0]
mov esi, dword [ebp - 0x28]
mov ecx, 1
mov word [eax], 0
mov dword [ebp - 0xec], 1
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0xbc], ecx
mov ecx, dword [ebp - 0xcc]
xor edx, edx
mov dword [ebp - 0x10], 0x25
test eax, eax
setne dl
cmove esi, eax
mov dword [ebp - 0x578], edx
mov dword [ebp - 0x574], 0
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x56c], ecx
mov dword [ebp - 0x568], edx
mov dword [ebp - 0x564], 0
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x55c], ecx
lea ecx, [ebp - 0xa4]
lea edx, [ebp - 0x578]
mov dword [ebp - 0x558], esi
call fcn.101932a0
mov ecx, dword [ebp - 0xa4]
test ecx, ecx
je 0x101a7734
mov eax, dword [ebp - 0x9c]
lea edx, [eax + eax*8]
lea edx, [edx + edx*2]
add edx, eax
mov edi, dword [ecx + edx + 0xb4]
mov esi, edi
neg esi
jo 0x101a7734
shl eax, 4
mov dword [ebp - 0x5c], edi
mov edi, dword [ecx + edx + 0xcc]
xor ebx, ebx
mov esi, dword [ecx + eax]
mov dword [ebp - 0x170], edi
mov dword [ebp - 0x3c], esi
mov esi, dword [ecx + eax + 4]
mov eax, dword [ecx + eax + 8]
mov dword [ebp - 0x50], esi
mov esi, dword [ecx + edx + 0xc4]
mov dword [ebp - 0x34], eax
mov eax, dword [ecx + edx + 0xb8]
mov dword [ebp - 0xac], esi
mov esi, dword [ecx + edx + 0xc8]
mov ecx, dword [ecx + edx + 0xbc]
mov edx, eax
mov dword [ebp - 0xb4], eax
add ecx, eax
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x28], ecx
jmp 0x101a5fdd
xor ebx, ebx
test di, di
je 0x101a6552
mov di, 1
test bx, bx
jne 0x101a5fd2
cmp edx, ecx
je 0x101a6067
movzx eax, byte [edx]
movzx esi, al
test al, al
js 0x101a5ff7
inc edx
jmp 0x101a604e
movzx ecx, byte [edx + 1]
and esi, 0x1f
and ecx, 0x3f
cmp al, 0xdf
jbe 0x101a602e
movzx ebx, byte [edx + 2]
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
cmp al, 0xf0
jb 0x101a603b
movzx eax, byte [edx + 3]
and esi, 7
shl ebx, 6
add edx, 4
shl esi, 0x12
and eax, 0x3f
or eax, ebx
or esi, eax
jmp 0x101a6043
shl esi, 6
add edx, 2
or esi, ecx
mov ecx, dword [ebp - 0x28]
jmp 0x101a604e
shl esi, 0xc
add edx, 3
or esi, ebx
mov ecx, dword [ebp - 0x28]
cmp esi, 0xffff
ja 0x101a6054
xor ebx, ebx
mov edi, esi
jmp 0x101a5fd4
and esi, 0x3ff
or esi, 0xdc00
mov ebx, esi
jmp 0x101a5fd4
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x101a607f
push 1
push eax
push dword [ebp - 0xb4]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0xf4]
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0x170]
mov ecx, dword [ebp - 0x13c]
sub eax, edi
cmp eax, esi
jae 0x101a60cb
mov dword [ebp - 0x10], 0x28
lea ecx, [ebp - 0xf4]
mov edx, edi
push 2
push 2
push esi
call fcn.101cb480
add esp, 0xc
mov ecx, dword [ebp - 0xf0]
mov edi, dword [ebp - 0xec]
mov esi, dword [ebp - 0x170]
lea eax, [esi + esi]
mov dword [ebp - 0x13c], ecx
lea ecx, [ecx + edi*2]
push eax
mov ebx, dword [ebp - 0x44]
push ebx
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0xac]
add edi, esi
mov dword [ebp - 0xec], edi
test eax, eax
je 0x101a6105
add eax, eax
push 2
push eax
push ebx
call fcn.10013780
add esp, 0xc
cmp edi, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
jne 0x101a613b
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0x56], 1
mov dword [ebp - 0x10], 0x26
mov dword [ebp - 0xbc], edi
call fcn.10195060
mov edi, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xf0]
mov word [eax + edi*2], 0x3d
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x34]
and dword [ebp - 0xb4], 0xffffff00
inc edi
mov dword [ebp - 0xec], edi
xor edi, edi
add eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x101a616c
xor edi, edi
test si, si
je 0x101a6dec
mov si, 1
test di, di
jne 0x101a6161
cmp ecx, eax
je 0x101a61ff
movzx ebx, byte [ecx]
movzx edx, bl
test bl, bl
js 0x101a618a
inc ecx
jmp 0x101a61e3
movzx eax, byte [ecx + 1]
and edx, 0x1f
and eax, 0x3f
cmp bl, 0xdf
jbe 0x101a61c3
movzx edi, byte [ecx + 2]
shl eax, 6
and edi, 0x3f
or edi, eax
cmp bl, 0xf0
jb 0x101a61d0
movzx eax, byte [ecx + 3]
and edx, 7
shl edi, 6
add ecx, 4
shl edx, 0x12
and eax, 0x3f
or eax, edi
or edx, eax
jmp 0x101a61d8
shl edx, 6
add ecx, 2
or edx, eax
mov eax, dword [ebp - 0x20]
jmp 0x101a61e3
shl edx, 0xc
add ecx, 3
or edx, edi
mov eax, dword [ebp - 0x20]
cmp edx, 0xffff
ja 0x101a61ec
xor edi, edi
mov esi, edx
jmp 0x101a6163
and edx, 0x3ff
or edx, 0xdc00
mov edi, edx
jmp 0x101a6163
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x3c]
mov eax, ecx
shr eax, 8
neg edx
mov dword [ebp - 0x148], eax
jo 0x101a7b4c
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x120], ecx
lea ecx, [ebp - 0xf4]
lea edx, [ebp - 0x120]
mov dword [ebp - 0x10], 0x27
mov dword [ebp - 0x11c], eax
mov word [ebp - 0x118], 0
call fcn.101954b0
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x101a625d
push 1
push eax
push dword [ebp - 0x50]
call fcn.10013780
add esp, 0xc
mov edx, dword [ebp - 0xec]
cmp edx, dword [ebp - 0xf4]
jne 0x101a628d
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0x56], 0
mov dword [ebp - 0x10], 0x26
mov dword [ebp - 0xbc], edx
call fcn.10195060
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xb4]
mov word [eax + edx*2], 0
inc edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x10], 0x25
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xec], edx
lea edx, [ebp - 0x578]
call fcn.101932a0
jmp 0x101a5f48
xor edx, edx
xor esi, esi
mov dword [ebp - 0x20], 2
xor eax, eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x13c], esi
cmp eax, dword [ecx + 0x34]
jno 0x101a65b5
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x3c], 2
mov dword [ebp - 0x28], 0
pxor xmm0, xmm0
mov cl, 1
xor eax, eax
movdqu xmmword [ebp - 0xf4], xmm0
lock cmpxchg byte [0x10284c0c], cl
jne 0x101a77ad
mov eax, dword [0x10284bf4]
movzx ebx, byte [ebp + 0xc]
test eax, 0x7fffffff
jne 0x101a77ce
xor eax, eax
movzx ecx, byte [0x10284c0d]
xor edx, edx
mov dword [ebp - 0x150], 0x10284c0c
mov byte [ebp - 0x14c], al
lea eax, [ebp - 0x15c]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x144], 2
mov dword [ebp - 0x10], 0x2b
test cl, cl
mov ecx, dword [ebp - 0xb0]
setne dl
test bl, bl
mov dword [ebp - 0x154], edx
lea edx, [ebp - 0x144]
cmovne edx, eax
cmp dword [ecx], 6
lea esi, [ecx + 8]
cmovne edx, ecx
cmp dword [ecx + 8], 6
cmove esi, eax
cmp dword [ecx + 0x10], 6
mov dword [ebp - 0x44], esi
lea esi, [ecx + 0x10]
lea ecx, [ebp - 0x578]
cmove esi, eax
lea eax, [ebp - 0x120]
mov dword [ebp - 0xac], esi
push eax
push 0xfffffffffffffff6
call fcn.101a89f0
add esp, 8
movzx eax, byte [ebp - 0x578]
cmp al, 4
jne 0x101a6db7
mov ecx, dword [ebp - 0x574]
mov edx, dword [ebp - 0x44]
lea eax, [ebp - 0x118]
mov dword [ebp - 0x10], 0x2c
mov dword [ebp - 0x5c], ecx
lea ecx, [ebp - 0x578]
push eax
push 0xfffffffffffffff5
call fcn.101a89f0
add esp, 8
movzx eax, byte [ebp - 0x578]
cmp al, 4
jne 0x101a6e75
mov ecx, dword [ebp - 0x574]
mov edx, dword [ebp - 0xac]
lea eax, [ebp - 0x110]
mov dword [ebp - 0x10], 0x2d
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x578]
push eax
push 0xfffffffffffffff4
call fcn.101a89f0
add esp, 8
movzx eax, byte [ebp - 0x578]
mov edx, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0x38]
cmp al, 4
jne 0x101a76ef
mov esi, dword [ebp - 0x574]
cmp dword [ebp - 0x5c], 0
mov ebx, dword [ebp - 0x34]
pxor xmm0, xmm0
mov dword [ebp - 0x64], 0
movdqu xmmword [ebp - 0x74], xmm0
movdqu xmmword [ebp - 0x84], xmm0
movdqu xmmword [ebp - 0x94], xmm0
movdqu xmmword [ebp - 0xa4], xmm0
jne 0x101a64b1
cmp dword [ebp - 0x44], 0
jne 0x101a64b1
mov eax, 1
test esi, esi
je 0x101a64cc
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x78], pe_nt_image_headers32
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x68], eax
mov eax, 0x101
mov dword [ebp - 0x64], esi
cmp byte [edx + 0x44], 1
jne 0x101a64e0
movzx ecx, word [edx + 0x46]
mov dword [ebp - 0x78], eax
mov word [ebp - 0x74], cx
mov ecx, dword [ebp - 0x38]
mov eax, dword [edx + 0x64]
mov dword [ebp - 0xac], esi
test eax, eax
mov dword [ebp - 0xb4], eax
je 0x101a77f2
add edx, 0x5c
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xa4], 0x48
mov dword [ebp - 0x10], 0x2e
call fcn.101a93f0
mov edi, dword [ebp - 0xcc]
mov esi, dword [ebp - 0xc8]
test byte [ebp - 0xd0], 1
mov ebx, dword [ebp - 0x38]
lea edx, [ebp - 0x578]
je 0x101a7804
mov eax, dword [ebp - 0xa8]
mov ebx, dword [ebp - 0x34]
mov dword [eax], edi
mov dword [eax + 4], esi
mov dword [eax + 8], 2
jmp 0x101a79f3
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x101a656a
push 1
push eax
push dword [ebp - 0xb4]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x101a657f
push 1
push eax
push dword [ebp - 0x50]
call fcn.10013780
add esp, 0xc
mov ecx, dword [ebp - 0xac]
mov eax, dword [ebp - 0x44]
or dword [ebp - 0x20], 2
mov dword [ebp - 0x34], 0x1024a614
test ecx, ecx
je 0x101a6e22
add ecx, ecx
push 2
push ecx
push eax
call fcn.10013780
add esp, 0xc
mov dword [ebp - 0x10], 0x24
jmp 0x101a6e22
mov edx, dword [ecx + 0x38]
mov ecx, dword [ecx + 0x3c]
xor ebx, ebx
add ecx, edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], ecx
jmp 0x101a65d2
xor ebx, ebx
test di, di
je 0x101a6663
mov di, 1
test bx, bx
jne 0x101a65c7
cmp edx, ecx
je 0x101a6eb3
movzx eax, byte [edx]
movzx esi, al
test al, al
js 0x101a65f0
inc edx
jmp 0x101a6647
movzx ecx, byte [edx + 1]
and esi, 0x1f
and ecx, 0x3f
cmp al, 0xdf
jbe 0x101a6627
movzx ebx, byte [edx + 2]
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
cmp al, 0xf0
jb 0x101a6634
movzx eax, byte [edx + 3]
and esi, 7
shl ebx, 6
add edx, 4
shl esi, 0x12
and eax, 0x3f
or eax, ebx
or esi, eax
jmp 0x101a663c
shl esi, 6
add edx, 2
or esi, ecx
mov ecx, dword [ebp - 0x28]
jmp 0x101a6647
shl esi, 0xc
add edx, 3
or esi, ebx
mov ecx, dword [ebp - 0x28]
cmp esi, 0xffff
ja 0x101a6650
xor ebx, ebx
mov edi, esi
jmp 0x101a65c9
and esi, 0x3ff
or esi, 0xdc00
mov ebx, esi
jmp 0x101a65c9
mov edx, 0x1024a614
mov ecx, 2
mov eax, dword [ebp - 0xa8]
mov edi, dword [ebp - 0x48]
mov ebx, dword [ebp - 0x34]
mov dword [eax + 4], edx
mov dword [eax], ecx
mov dword [eax + 8], 2
jmp 0x101a7ab6
jne 0x101a587f
cmp edi, edx
jb 0x101a6696
mov edi, edx
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x10], 0x14
mov dword [ebp - 0x578], edx
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x574], edx
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x570], edi
mov dword [ebp - 0x56c], edx
lea edx, [ebp - 0x578]
push ecx
push eax
push edx
call fcn.1019b140
add esp, 0xc
cmp dword [ebp - 0x50], 1
je 0x101a66eb
push 3
push str.exe.NULcmd.exestd_src_syspalwindows_stdio.rs
lea eax, [ebp - 0x578]
push eax
call fcn.1019bde0
add esp, 0xc
mov edx, dword [ebp - 0x574]
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x28], edx
push dword [ebp - 0x570]
call fcn.101a8890
add esp, 4
mov eax, dword [ebp - 0x578]
test eax, eax
je 0x101a6720
push 1
push eax
push dword [ebp - 0x28]
call fcn.10013780
add esp, 0xc
mov esi, dword [ebp - 0x120]
mov eax, esi
neg eax
jno 0x101a6ba9
mov edi, 0x200
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 2
mov dword [ebp - 0xec], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 2
cmp edi, 0x201
jb 0x101a677e
jmp 0x101a6790
jbe 0x101a682a
cmp edi, 0x201
jae 0x101a6790
mov dword [ebp - 0x20], 0x200
lea ebx, [ebp - 0x578]
mov esi, edi
jmp 0x101a67d1
mov esi, dword [ebp - 0x2c]
sub edi, esi
je 0x101a67c2
mov dword [ebp - 0x10], 0x10
lea ecx, [ebp - 0xf4]
mov edx, esi
push 2
push 2
push edi
call fcn.101cb480
add esp, 0xc
mov esi, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0xec], esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x2c], esi
push 0
call dword [sym.imp.kernel32.dll_SetLastError]
push esi
push ebx
call dword [sym.imp.kernel32.dll_GetSystemDirectoryW]
mov edi, eax
test eax, eax
jne 0x101a67f5
call dword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x101a68f9
cmp edi, esi
jne 0x101a6770
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x101a7ca6
lea edi, [esi + esi]
test esi, esi
mov eax, 0xffffffff
cmovs edi, eax
cmp edi, 0x201
jae 0x101a6790
jmp 0x101a677e
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], 0x10
cmp edi, eax
ja 0x101a7db5
push edi
push ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.1019a100
add esp, 0xc
mov dword [ebp - 0x10], 0x11
push dword [ebp - 0x30]
push dword [ebp - 0x54]
lea eax, [ebp - 0xa4]
push eax
call fcn.1019b140
add esp, 0xc
cmp dword [ebp - 0x50], 1
je 0x101a6885
push 3
push str.exe.NULcmd.exestd_src_syspalwindows_stdio.rs
lea eax, [ebp - 0xa4]
push eax
call fcn.1019bde0
add esp, 0xc
mov edx, dword [ebp - 0xa0]
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x2c], edx
push dword [ebp - 0x9c]
call fcn.101a8890
add esp, 4
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x101a68ba
push 1
push eax
push dword [ebp - 0x2c]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0xf4]
mov esi, dword [ebp - 0x120]
mov ebx, dword [ebp - 0x11c]
mov edi, dword [ebp - 0x118]
test eax, eax
je 0x101a68e9
add eax, eax
push 2
push eax
push dword [ebp - 0xf0]
call fcn.10013780
add esp, 0xc
cmp esi, 0x80000001
jg 0x101a4d72
je 0x101a6920
jmp 0x101a6971
call dword [sym.imp.kernel32.dll_GetLastError]
mov edi, eax
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x101a691e
add eax, eax
push 2
push eax
push dword [ebp - 0xf0]
call fcn.10013780
add esp, 0xc
xor ebx, ebx
cmp bl, 3
jne 0x101a6971
mov eax, dword [edi]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x2c], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x20], eax
mov eax, dword [eax]
test eax, eax
je 0x101a6948
mov dword [ebp - 0x10], 0xf
push dword [ebp - 0x2c]
call eax
add esp, 4
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [edx + 4]
test eax, eax
je 0x101a6962
push dword [edx + 8]
push eax
push ecx
call fcn.10013780
add esp, 0xc
push 4
push 0xc
push dword [ebp - 0x38]
call fcn.10013780
add esp, 0xc
mov eax, 0x200
xor ebx, ebx
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 2
mov dword [ebp - 0xec], 0
mov dword [ebp - 0x20], 2
cmp eax, 0x201
jb 0x101a69bd
jmp 0x101a69d0
jbe 0x101a6a73
cmp eax, 0x201
jae 0x101a69d0
mov dword [ebp - 0x2c], 0x200
lea edi, [ebp - 0x578]
mov esi, eax
jmp 0x101a6a0d
sub eax, ebx
je 0x101a69ff
mov dword [ebp - 0x10], 0xd
lea ecx, [ebp - 0xf4]
mov edx, ebx
push 2
push 2
push eax
call fcn.101cb480
add esp, 0xc
mov ebx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x20], eax
mov edi, dword [ebp - 0x20]
mov esi, ebx
mov dword [ebp - 0xec], ebx
mov dword [ebp - 0x2c], ebx
push 0
call dword [sym.imp.kernel32.dll_SetLastError]
push esi
push edi
call dword [sym.imp.kernel32.dll_GetWindowsDirectoryW]
test eax, eax
jne 0x101a6a3f
mov dword [ebp - 0x28], edi
mov edi, ebx
mov ebx, eax
call dword [sym.imp.kernel32.dll_GetLastError]
mov ecx, eax
mov eax, ebx
mov ebx, edi
mov edi, dword [ebp - 0x28]
test ecx, ecx
jne 0x101a6bba
cmp eax, esi
jne 0x101a69b0
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x101a7cc6
lea eax, [esi + esi]
test esi, esi
mov ecx, 0xffffffff
cmovs eax, ecx
cmp eax, 0x201
jae 0x101a69d0
jmp 0x101a69bd
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x10], 0xd
cmp eax, ecx
ja 0x101a7dc6
push eax
push edi
lea eax, [ebp - 0xa4]
push eax
call fcn.1019a100
add esp, 0xc
mov dword [ebp - 0x10], 0xe
push dword [ebp - 0x30]
push dword [ebp - 0x54]
lea eax, [ebp - 0xa4]
push eax
call fcn.1019b140
add esp, 0xc
cmp dword [ebp - 0x50], 1
je 0x101a6ace
push 3
push str.exe.NULcmd.exestd_src_syspalwindows_stdio.rs
lea eax, [ebp - 0xa4]
push eax
call fcn.1019bde0
add esp, 0xc
mov edx, dword [ebp - 0xa0]
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x2c], edx
push dword [ebp - 0x9c]
call fcn.101a8890
add esp, 4
mov eax, dword [ebp - 0xa4]
test eax, eax
je 0x101a6b03
push 1
push eax
push dword [ebp - 0x2c]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x118]
movzx ebx, byte [ebp - 0x11c]
movzx esi, byte [ebp - 0x119]
movzx edi, word [ebp - 0x11b]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0x38], ecx
test eax, eax
je 0x101a6b47
add eax, eax
push 2
push eax
push dword [ebp - 0xf0]
call fcn.10013780
add esp, 0xc
cmp dword [ebp - 0x48], 0x80000001
jg 0x101a6d9d
jne 0x101a6be4
cmp bl, 3
jne 0x101a6be4
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x20], eax
mov eax, dword [eax]
mov dword [ebp - 0x2c], ecx
test eax, eax
je 0x101a6b86
mov dword [ebp - 0x10], 0xc
push dword [ebp - 0x2c]
call eax
add esp, 4
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [edx + 4]
test eax, eax
je 0x101a6ba0
push dword [edx + 8]
push eax
push ecx
call fcn.10013780
add esp, 0xc
push 4
push 0xc
push dword [ebp - 0x38]
jmp 0x101a6bd5
mov ebx, dword [ebp - 0x11c]
mov edi, dword [ebp - 0x118]
jmp 0x101a4d72
call dword [sym.imp.kernel32.dll_GetLastError]
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x101a6bdd
add eax, eax
push 2
push eax
push dword [ebp - 0xf0]
call fcn.10013780
add esp, 0xc
mov dword [ebp - 0x10], 9
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x10], 9
lea eax, [ebp - 0x120]
push 4
push str.PATHstd_src_sys_commonwtf8.rsassertion_failed:_is_code_point_boundary_self__new_len_
push eax
call fcn.10196340
add esp, 0xc
mov ecx, dword [ebp - 0x120]
mov eax, ecx
neg eax
jo 0x101a6d87
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x118]
add eax, ecx
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0xa0], eax
mov word [ebp - 0x9c], 0
mov byte [ebp - 0x98], 1
lea eax, [ebp - 0xa4]
lea ecx, [ebp - 0x578]
mov dword [ebp - 0x10], 0xa
push eax
push ecx
call fcn.101a2fd0
add esp, 8
jmp 0x101a6c7a
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x578]
push eax
call fcn.101a2fd0
add esp, 8
mov eax, dword [ebp - 0x578]
mov edi, dword [ebp - 0x54]
mov ecx, eax
neg ecx
jo 0x101a6d72
mov edx, dword [ebp - 0x570]
mov ecx, dword [ebp - 0x574]
test edx, edx
jne 0x101a6caf
test eax, eax
je 0x101a6c64
push 1
push eax
push ecx
call fcn.10013780
add esp, 0xc
jmp 0x101a6c64
mov esi, dword [ebp - 0x56c]
mov dword [ebp - 0x578], eax
mov dword [ebp - 0x574], ecx
mov dword [ebp - 0x570], edx
mov dword [ebp - 0x10], 0xb
mov dword [ebp - 0x56c], esi
push dword [ebp - 0x30]
push edi
lea eax, [ebp - 0x578]
push eax
call fcn.1019b140
add esp, 0xc
cmp dword [ebp - 0x50], 1
je 0x101a6d03
push 3
push str.exe.NULcmd.exestd_src_syspalwindows_stdio.rs
lea eax, [ebp - 0x578]
push eax
call fcn.1019bde0
add esp, 0xc
mov edx, dword [ebp - 0x574]
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x28], edx
push dword [ebp - 0x570]
call fcn.101a8890
add esp, 4
mov eax, dword [ebp - 0x578]
test eax, eax
je 0x101a6d38
push 1
push eax
push dword [ebp - 0x28]
call fcn.10013780
add esp, 0xc
mov esi, dword [ebp - 0xf4]
mov eax, esi
neg eax
jo 0x101a6c45
mov eax, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0xf0]
mov edi, dword [ebp - 0xec]
test eax, eax
je 0x101a4d72
push 1
push eax
push dword [ebp - 0x20]
call fcn.10013780
add esp, 0xc
jmp 0x101a4d72
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x101a6d87
push 1
push eax
push dword [ebp - 0x20]
call fcn.10013780
add esp, 0xc
mov byte [ebp - 0xcc], 2
mov dword [ebp - 0xc8], 0x1024a664
jmp 0x101a47ab
shl esi, 0x10
movzx eax, bl
or edi, esi
mov esi, dword [ebp - 0x48]
mov ebx, edi
mov edi, dword [ebp - 0x38]
shl ebx, 8
or ebx, eax
jmp 0x101a4d72
movzx ecx, byte [ebp - 0x575]
mov edx, dword [ebp - 0xa8]
movzx edi, word [ebp - 0x577]
mov esi, dword [ebp - 0x574]
mov ebx, dword [ebp - 0x34]
mov byte [edx + 3], cl
mov word [edx + 1], di
mov byte [edx], al
mov dword [edx + 4], esi
mov dword [edx + 8], 2
jmp 0x101a7a26
mov eax, dword [ebp - 0x3c]
mov esi, 2
mov dword [ebp - 0x34], 0x1024a614
test eax, eax
je 0x101a6e0d
push 1
push eax
push dword [ebp - 0x50]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x10], 0x24
shl eax, 8
or eax, esi
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x578]
mov byte [ebp - 0x49], 0
mov dword [ebp - 0x10], 0x24
call fcn.10191330
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x101a6e55
add eax, eax
push 2
push eax
push dword [ebp - 0xf0]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x48]
mov dword [eax + 4], ecx
mov dword [eax], edx
mov dword [eax + 8], 2
jmp 0x101a7aca
movzx ecx, byte [ebp - 0x575]
mov edx, dword [ebp - 0xa8]
movzx edi, word [ebp - 0x577]
mov esi, dword [ebp - 0x574]
mov byte [edx + 3], cl
mov word [edx + 1], di
mov byte [edx], al
mov dword [edx + 4], esi
mov dword [edx + 8], 2
push dword [ebp - 0x5c]
call dword [sym.imp.kernel32.dll_CloseHandle]
mov ebx, dword [ebp - 0x34]
jmp 0x101a7a26
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0x578]
mov dword [ebp - 0x10], 0x29
mov dword [ebp - 0x578], eax
mov dword [ebp - 0x574], ecx
lea ecx, [ebp - 0xa4]
mov word [ebp - 0x570], 0
call fcn.10195620
mov eax, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x9c]
cmp edx, eax
jne 0x101a6f11
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x10], 0x2a
call fcn.10195060
mov eax, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0x28], eax
neg eax
mov word [ecx + edx*2], 0
jno 0x101a7729
inc edx
jmp 0x101a666d
test ax, ax
mov eax, 0
cmove eax, edx
test eax, eax
cmove edi, ecx
mov ecx, dword [ebp - 0xa4]
cmove eax, edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], edi
mov eax, ecx
sub eax, ebx
cmp eax, edi
jae 0x101a6f88
mov dword [ebp - 0x10], 0x21
lea ecx, [ebp - 0xa4]
mov edx, ebx
push 2
push 2
push edi
call fcn.101cb480
add esp, 0xc
mov eax, dword [ebp - 0xa4]
mov ebx, dword [ebp - 0x9c]
mov esi, dword [ebp - 0xa0]
mov dword [ebp - 0x30], eax
jmp 0x101a6f8b
mov dword [ebp - 0x30], ecx
mov edi, dword [ebp - 0x20]
lea ecx, [esi + ebx*2]
lea eax, [edi + edi]
push eax
push dword [ebp - 0x28]
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, edi
cmp ebx, dword [ebp - 0x30]
mov dword [ebp - 0x9c], ebx
jne 0x101a6fcc
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x10], 0x21
mov dword [ebp - 0x20], ebx
call fcn.10195060
mov ebx, dword [ebp - 0x20]
mov esi, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x13c]
movzx edx, byte [ebp - 0x50]
mov word [esi + ebx*2], 0x22
inc ebx
mov dword [ebp - 0x9c], ebx
lea eax, [eax + eax*4]
mov dword [ebp - 0xbc], edx
lea esi, [ecx + eax*4]
mov dword [ebp - 0x3c], esi
cmp ecx, esi
je 0x101a796f
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x13c], ecx
cmp eax, dword [ebp - 0xa4]
mov dword [ebp - 0x5c], eax
jne 0x101a7026
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x10], 0x21
call fcn.10195060
mov edx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x13c]
lea edi, [edx + 1]
mov word [esi + edx*2], 0x20
lea eax, [ecx + 0x14]
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0xb4], eax
cmp dword [ecx], 1
jne 0x101a7094
mov eax, ecx
mov dword [ebp - 0x10], 0x21
lea ecx, [ebp - 0x578]
lea edx, [ebp - 0xa4]
push dword [ebp - 0xbc]
push eax
call fcn.101a08f0
add esp, 8
cmp byte [ebp - 0x578], 4
jne 0x101a7b28
mov ecx, dword [ebp - 0xb4]
mov esi, dword [ebp - 0x3c]
jmp 0x101a6ff5
mov eax, dword [ecx + 0xc]
mov ebx, dword [ecx + 8]
mov dword [ebp - 0x28], eax
add eax, ebx
mov ecx, ebx
mov dword [ebp - 0x20], eax
jmp 0x101a70af
inc ecx
cmp dl, al
je 0x101a76af
cmp ecx, dword [ebp - 0x20]
je 0x101a70d4
movzx eax, byte [ecx]
mov esi, 0xffffffff
nop dword [eax]
movzx edx, byte [esi + 0x1024a325]
cmp dl, al
je 0x101a70a6
test esi, esi
lea esi, [esi + 1]
jne 0x101a70c0
jmp 0x101a70a6
movdqa xmm0, xmmword [0x102483c0]
mov ecx, ebx
xor ebx, ebx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], ecx
jmp 0x101a70f3
xor ebx, ebx
test di, di
je 0x101a76d0
xor esi, esi
mov di, 1
test bx, bx
jne 0x101a70e8
cmp ecx, dword [ebp - 0x20]
je 0x101a7181
movzx eax, byte [ecx]
movzx edx, al
test al, al
js 0x101a7110
inc ecx
jmp 0x101a7165
movzx esi, byte [ecx + 1]
and edx, 0x1f
and esi, 0x3f
cmp al, 0xdf
jbe 0x101a7147
movzx ebx, byte [ecx + 2]
shl esi, 6
and ebx, 0x3f
or ebx, esi
cmp al, 0xf0
jb 0x101a7153
movzx eax, byte [ecx + 3]
and edx, 7
shl ebx, 6
add ecx, 4
shl edx, 0x12
and eax, 0x3f
or eax, ebx
or edx, eax
jmp 0x101a715b
shl edx, 6
add ecx, 2
or edx, esi
xor esi, esi
jmp 0x101a7165
shl edx, 0xc
add ecx, 3
or edx, ebx
xor esi, esi
cmp edx, 0xffff
ja 0x101a716e
xor ebx, ebx
mov edi, edx
jmp 0x101a70ea
and edx, 0x3ff
or edx, 0xdc00
mov ebx, edx
jmp 0x101a70ea
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x44]
mov ebx, dword [ebp - 0x34]
test eax, eax
je 0x101a72e8
cmp byte [eax + ebx - 1], 0x5c
sete al
or al, byte [ebp - 0x50]
mov byte [ebp - 0x13c], al
mov eax, ebx
jmp 0x101a71b6
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x20]
je 0x101a72df
movzx ecx, byte [eax]
movzx esi, cl
test cl, cl
js 0x101a71c6
inc eax
mov dword [ebp - 0x30], eax
jmp 0x101a722e
movzx edi, byte [eax + 1]
and esi, 0x1f
and edi, 0x3f
cmp cl, 0xdf
jbe 0x101a720d
mov dword [ebp - 0x28], esi
mov esi, eax
movzx eax, byte [eax + 2]
shl edi, 6
and eax, 0x3f
or eax, edi
cmp cl, 0xf0
jb 0x101a721d
movzx ecx, byte [esi + 3]
add esi, 4
mov edi, dword [ebp - 0x44]
shl eax, 6
mov dword [ebp - 0x30], esi
mov esi, dword [ebp - 0x28]
and ecx, 0x3f
and esi, 7
or ecx, eax
shl esi, 0x12
or esi, ecx
jmp 0x101a722e
shl esi, 6
add eax, 2
or esi, edi
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x30], eax
jmp 0x101a722e
add esi, 3
mov edi, dword [ebp - 0x44]
mov dword [ebp - 0x30], esi
mov esi, dword [ebp - 0x28]
shl esi, 0xc
or esi, eax
mov eax, esi
mov dword [ebp - 0x28], esi
and eax, 0x1ff800
cmp eax, 0xd800
sete al
cmp esi, 0x110000
sete cl
or cl, al
mov ecx, dword [ebp - 0x28]
jne 0x101a71aa
cmp ecx, 0x80
jae 0x101a72a1
lea eax, [ecx - 0x30]
mov dword [ebp - 0x10], 0x21
cmp eax, 0xa
jb 0x101a72a1
mov eax, ecx
and eax, 0x5f
add eax, 0xffffffbf
cmp eax, 0x19
jbe 0x101a72a1
push 0xc
push 0x1024a28b
push ecx
call fcn.101bc540
add esp, 0xc
movdqa xmm0, xmmword [0x102483c0]
mov edx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x44]
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
cmp eax, 1
jne 0x101a72ca
mov dword [ebp - 0x10], 0x21
push ecx
call fcn.101bfdd0
add esp, 4
movdqa xmm0, xmmword [0x102483c0]
mov edx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x44]
mov ebx, dword [ebp - 0x34]
test al, al
je 0x101a71aa
mov eax, dword [ebp - 0x30]
mov byte [ebp - 0x13c], 1
cmp eax, dword [ebp - 0x20]
jne 0x101a71b6
jmp 0x101a72e8
test byte [ebp - 0x13c], 1
je 0x101a732d
cmp edx, dword [ebp - 0xa4]
jne 0x101a7313
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x10], 0x21
call fcn.10195060
mov edi, dword [ebp - 0xa0]
movdqa xmm0, xmmword [0x102483c0]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x5c]
mov al, 1
mov dword [ebp - 0x44], eax
mov word [edi + edx*2 + 2], 0x22
add edx, 2
mov dword [ebp - 0x9c], edx
jmp 0x101a7334
mov dword [ebp - 0x44], 0
mov esi, dword [ebp - 0x3c]
xor ecx, ecx
mov dword [ebp - 0x28], 0
jmp 0x101a735e
mov esi, dword [ebp - 0x3c]
movdqa xmm0, xmmword [0x102483c0]
mov word [edi + edx*2], cx
inc edx
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0x9c], edx
test cx, cx
je 0x101a7368
mov esi, dword [ebp - 0x28]
jmp 0x101a73d3
cmp ebx, dword [ebp - 0x20]
je 0x101a75cb
movzx ecx, byte [ebx]
movzx eax, cl
test cl, cl
js 0x101a737e
inc ebx
jmp 0x101a73ce
movzx esi, byte [ebx + 1]
and eax, 0x1f
and esi, 0x3f
cmp cl, 0xdf
jbe 0x101a73c6
mov dword [ebp - 0x30], eax
movzx eax, byte [ebx + 2]
shl esi, 6
and eax, 0x3f
or eax, esi
cmp cl, 0xf0
jb 0x101a74ca
movzx ecx, byte [ebx + 3]
mov esi, dword [ebp - 0x30]
shl eax, 6
add ebx, 4
and esi, 7
and ecx, 0x3f
shl esi, 0x12
or ecx, eax
or esi, ecx
mov ecx, esi
jmp 0x101a74d5
shl eax, 6
add ebx, 2
or eax, esi
mov esi, dword [ebp - 0x28]
mov ecx, eax
mov dword [ebp - 0x13c], 0
movzx eax, cx
cmp eax, 0x24
jg 0x101a7512
cmp eax, 0xd
je 0x101a7522
cmp eax, 0x22
jne 0x101a7589
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x34], ebx
mov ecx, eax
sub ecx, edx
cmp ecx, esi
jae 0x101a7448
mov dword [ebp - 0x10], 0x21
lea ecx, [ebp - 0xa4]
push 2
push 2
push esi
call fcn.101cb480
add esp, 0xc
mov edi, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x9c]
movdqa xmm0, xmmword [0x102483c0]
mov ebx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x30]
jmp 0x101a744f
mov ecx, dword [ebp - 0x30]
test esi, esi
je 0x101a7490
xor eax, eax
cmp esi, 0x10
jb 0x101a747e
mov eax, esi
lea ecx, [edi + edx*2 + 0x10]
and eax, 0xfffffff0
add edx, eax
mov esi, eax
movdqu xmmword [ecx - 0x10], xmm0
movdqu xmmword [ecx], xmm0
add ecx, 0x20
add esi, 0xfffffff0
jne 0x101a7463
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x30]
cmp esi, eax
je 0x101a748a
sub esi, eax
mov word [edi + edx*2], 0x5c
inc edx
dec esi
jne 0x101a7480
mov eax, dword [ebp - 0xa4]
cmp edx, eax
mov dword [ebp - 0x9c], edx
jne 0x101a74be
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x10], 0x21
call fcn.10195060
mov edi, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
mov word [edi + edx*2], 0x22
inc edx
jmp 0x101a7583
mov ecx, dword [ebp - 0x30]
add ebx, 3
shl ecx, 0xc
or ecx, eax
mov esi, dword [ebp - 0x28]
cmp ecx, 0xffff
jbe 0x101a73d3
lea eax, [ecx + 0xff0000]
and ecx, 0x3ff
shr eax, 0xa
or ecx, 0xdc00
mov dword [ebp - 0x13c], ecx
or eax, 0xd800
mov ecx, eax
movzx eax, cx
cmp eax, 0x24
jle 0x101a73e9
cmp eax, 0x25
je 0x101a7522
cmp eax, 0x5c
jne 0x101a7589
inc esi
mov dword [ebp - 0x28], esi
jmp 0x101a7590
mov eax, dword [ebp - 0xa4]
sub eax, edx
cmp eax, 6
ja 0x101a7562
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x10], 0x21
lea ecx, [ebp - 0xa4]
push 2
push 2
push 7
call fcn.101cb480
add esp, 0xc
mov edi, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x9c]
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
mov word [edi + edx*2 + 0xc], 0x2c
mov dword [edi + edx*2 + 8], 0x7e003a
mov dword [edi + edx*2 + 4], 0x640063
mov dword [edi + edx*2], 0x250025
add edx, 7
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x28], 0
cmp edx, dword [ebp - 0xa4]
jne 0x101a7342
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x10], 0x21
call fcn.10195060
mov edi, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
jmp 0x101a7342
cmp byte [ebp - 0x44], 0
mov ecx, dword [ebp - 0xb4]
je 0x101a6ff5
mov eax, dword [ebp - 0xa4]
mov ebx, dword [ebp - 0x28]
mov ecx, eax
sub ecx, edx
cmp ecx, ebx
jae 0x101a761f
mov dword [ebp - 0x10], 0x21
lea ecx, [ebp - 0xa4]
push 2
push 2
push ebx
call fcn.101cb480
add esp, 0xc
mov edi, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x3c]
movdqa xmm0, xmmword [0x102483c0]
jmp 0x101a7623
test ebx, ebx
je 0x101a766c
xor eax, eax
cmp dword [ebp - 0x28], 0x10
jae 0x101a7630
mov ecx, dword [ebp - 0x28]
jmp 0x101a765a
mov eax, dword [ebp - 0x28]
mov ebx, edi
lea ecx, [edi + edx*2 + 0x10]
and eax, 0xfffffff0
add edx, eax
mov edi, eax
movdqu xmmword [ecx - 0x10], xmm0
movdqu xmmword [ecx], xmm0
add ecx, 0x20
add edi, 0xfffffff0
jne 0x101a7640
mov ecx, dword [ebp - 0x28]
mov edi, ebx
cmp ecx, eax
je 0x101a7666
sub ecx, eax
mov word [edi + edx*2], 0x5c
inc edx
dec ecx
jne 0x101a765c
mov eax, dword [ebp - 0xa4]
cmp edx, eax
mov dword [ebp - 0x9c], edx
jne 0x101a7697
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x10], 0x21
call fcn.10195060
mov edi, dword [ebp - 0xa0]
mov esi, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0xb4]
mov word [edi + edx*2], 0x22
inc edx
mov dword [ebp - 0x9c], edx
jmp 0x101a6ff5
xor esi, esi
mov dword [ebp - 0x20], 0x1024a2d4
mov ebx, 2
mov eax, dword [ebp - 0xa4]
test eax, eax
jne 0x101a5d29
jmp 0x101a5d3c
mov dword [ebp - 0x20], str.nul_byte_found_in_provided_data
mov ebx, 2
mov eax, dword [ebp - 0xa4]
test eax, eax
jne 0x101a5d29
jmp 0x101a5d3c
movzx ecx, byte [ebp - 0x575]
mov edx, dword [ebp - 0xa8]
movzx edi, word [ebp - 0x577]
mov esi, dword [ebp - 0x574]
mov ebx, dword [ebp - 0x34]
mov byte [edx + 3], cl
mov word [edx + 1], di
mov byte [edx], al
mov dword [edx + 4], esi
mov esi, 2
mov dword [edx + 8], 2
jmp 0x101a7a05
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x50], ecx
jmp 0x101a6306
lea ecx, [ebp - 0x578]
mov byte [ebp - 0x49], 0
mov dword [ebp - 0x10], 0x24
call fcn.10191330
mov edi, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xb0]
mov esi, dword [ebp - 0x13c]
cmp edi, dword [ebp - 0xf4]
jne 0x101a7785
lea ecx, [ebp - 0xf4]
mov byte [ebp - 0x49], 0
call fcn.10195060
mov esi, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xb0]
mov edi, dword [ebp - 0xbc]
mov word [esi + edi*2], 0
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf0]
mov ebx, edx
mov dword [ebp - 0x20], eax
neg ebx
jno 0x101a62dd
inc edi
mov dword [ebp - 0x34], edi
jmp 0x101a6e55
push 0x10284c0c
call fcn.101cba30
add esp, 4
mov eax, dword [0x10284bf4]
movzx ebx, byte [ebp + 0xc]
test eax, 0x7fffffff
je 0x101a6338
call fcn.101cb9a0
xor al, 1
mov dword [ebp - 0x10], 0x2b
jmp 0x101a633a
mov ebx, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x9c]
jmp 0x101a4d72
mov dword [ebp - 0xa4], 0x44
lea edx, [ebp - 0xa4]
jmp 0x101a782d
or ebx, 0x80000
lea eax, [ebp - 0xa4]
push 0x44
push eax
push edx
call sub.VCRUNTIME140.dll_memcpy
lea edx, [ebp - 0x578]
mov ecx, ebx
add esp, 0xc
mov ebx, dword [ebp - 0x34]
mov dword [ebp - 0x534], edi
lea eax, [ebp - 0xf4]
push eax
push edx
push dword [ebp - 0x50]
push dword [ebp - 0x13c]
push ecx
push 1
push 0
push 0
push dword [ebp - 0x128]
push dword [ebp - 0xc0]
call dword [sym.imp.kernel32.dll_CreateProcessW]
test eax, eax
je 0x101a79b4
mov eax, dword [ebp - 0xa8]
movsd xmm1, qword [ebp - 0x118]
cmp dword [ebp - 0xb4], 0
movsd xmm0, qword [ebp - 0x110]
movsd xmm2, qword [ebp - 0x120]
movsd qword [eax + 0x10], xmm1
movsd xmm1, qword [ebp - 0xf4]
movsd qword [eax + 0x18], xmm0
movsd qword [eax + 8], xmm2
movsd qword [eax], xmm1
je 0x101a78aa
mov ecx, edi
mov edx, esi
call fcn.10191c10
mov esi, dword [sym.imp.kernel32.dll_CloseHandle]
push dword [ebp - 0xac]
call esi
push dword [ebp - 0x44]
call esi
push dword [ebp - 0x5c]
call esi
cmp dword [ebp - 0x144], 4
jb 0x101a78d7
push dword [ebp - 0x140]
call dword [sym.imp.kernel32.dll_CloseHandle]
lea ecx, [ebp - 0x154]
call fcn.10191460
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x48]
mov edi, dword [ebp - 0xc0]
test eax, eax
je 0x101a7902
add eax, eax
push 2
push eax
push dword [ebp - 0x3c]
call fcn.10013780
add esp, 0xc
test ebx, ebx
je 0x101a7916
add ebx, ebx
push 2
push ebx
push dword [ebp - 0x20]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x12c]
test eax, eax
je 0x101a7933
add eax, eax
push 2
push eax
push dword [ebp - 0x128]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x101a7948
add eax, eax
push 2
push eax
push edi
call fcn.10013780
add esp, 0xc
cmp byte [ebp - 0x30], 0
je 0x101a48e6
test esi, esi
je 0x101a48e6
add esi, esi
push 2
push esi
push dword [ebp - 0x2c]
call fcn.10013780
add esp, 0xc
jmp 0x101a48e6
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x9c]
cmp ecx, eax
jne 0x101a799d
mov dword [ebp - 0x20], ecx
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x10], 0x21
call fcn.10195060
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0xa0]
mov word [esi + ecx*2], 0x22
inc ecx
mov ebx, esi
mov dword [ebp - 0x20], ecx
jmp 0x101a5d41
call dword [sym.imp.kernel32.dll_GetLastError]
movzx ecx, word [ebp - 0xd0]
mov edx, dword [ebp - 0xa8]
cmp dword [ebp - 0xb4], 0
mov word [edx + 1], cx
mov ch, byte [ebp - 0xce]
mov byte [edx + 3], ch
mov byte [edx], 0
mov dword [edx + 4], eax
mov dword [edx + 8], 2
je 0x101a79f3
mov ecx, edi
mov edx, esi
call fcn.10191c10
push dword [ebp - 0xac]
call dword [sym.imp.kernel32.dll_CloseHandle]
mov esi, dword [ebp - 0x144]
mov edi, dword [sym.imp.kernel32.dll_CloseHandle]
push dword [ebp - 0x44]
call edi
push dword [ebp - 0x5c]
call edi
cmp esi, 4
jb 0x101a7a26
push dword [ebp - 0x140]
call dword [sym.imp.kernel32.dll_CloseHandle]
cmp dword [ebp - 0x120], 0
mov edi, dword [ebp - 0x48]
je 0x101a7a3e
push dword [ebp - 0x11c]
call dword [sym.imp.kernel32.dll_CloseHandle]
cmp dword [ebp - 0x118], 0
je 0x101a7a53
push dword [ebp - 0x114]
call dword [sym.imp.kernel32.dll_CloseHandle]
cmp dword [ebp - 0x110], 0
je 0x101a7a68
push dword [ebp - 0x10c]
call dword [sym.imp.kernel32.dll_CloseHandle]
movzx eax, byte [ebp - 0x14c]
mov esi, dword [ebp - 0x150]
test byte [ebp - 0x154], 1
test al, al
jne 0x101a7a90
mov eax, dword [0x10284bf4]
test eax, 0x7fffffff
jne 0x101a7b12
xor eax, eax
xchg byte [esi], al
cmp al, 2
jne 0x101a7a9f
push esi
call dword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x101a7ab6
add eax, eax
push 2
push eax
push dword [ebp - 0x3c]
call fcn.10013780
add esp, 0xc
test ebx, ebx
je 0x101a7aca
add ebx, ebx
push 2
push ebx
push dword [ebp - 0x20]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x12c]
test eax, eax
je 0x101a7ae7
add eax, eax
push 2
push eax
push dword [ebp - 0x128]
call fcn.10013780
add esp, 0xc
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x101a7b01
add eax, eax
push 2
push eax
push dword [ebp - 0xc0]
call fcn.10013780
add esp, 0xc
cmp byte [ebp - 0x30], 0
je 0x101a48e6
xor ebx, ebx
jmp 0x101a52b7
call fcn.101cb9a0
test al, al
jne 0x101a7a90
mov byte [esi + 1], 1
jmp 0x101a7a90
mov esi, dword [ebp - 0x578]
mov eax, dword [ebp - 0x574]
mov ebx, esi
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xa4]
test eax, eax
jne 0x101a5d29
jmp 0x101a5d3c
movzx esi, cl
jmp 0x101a6e0d
call dword [sym.imp.kernel32.dll_GetLastError]
mov byte [ebp - 0x120], 0
mov dword [ebp - 0x11c], eax
lea eax, [ebp - 0x120]
mov dword [ebp - 0xa4], 0x1024a5b8
mov dword [ebp - 0xa0], 1
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x10], 0x30
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
mov dword [ebp - 0xf0], fcn.101979c0
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], 1
push 0x1024a5e4
lea eax, [ebp - 0xa4]
push eax
call fcn.101cc880
add esp, 8
jmp 0x101a7ded
xor eax, eax
jmp 0x101a7c1b
mov dword [ebp - 0x38], 1
mov byte [ebp - 0xb6], 1
mov dword [ebp - 0x10], 2
push esi
push dword [ebp - 0x38]
call fcn.101cc661
add esp, 8
jmp 0x101a7ded
mov eax, 2
mov dword [ebp - 0x10], 4
push esi
push eax
call fcn.101cc661
add esp, 8
jmp 0x101a7ded
mov eax, 1
push ebx
push eax
call fcn.101cc661
add esp, 8
jmp 0x101a7ded
mov dword [ebp - 0x10], 0x1f
push 0x1024aa68
push 0x28
push str.internal_error:_entered_unreachable_code_
call fcn.101cc940
add esp, 0xc
jmp 0x101a7ded
mov dword [ebp - 0x10], 3
push 0x10248854
push 0x21
push str.assertion_failed:_self.height___0
call fcn.101cc940
add esp, 0xc
jmp 0x101a7ded
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x10], 9
push 4
push 1
call fcn.101cc661
add esp, 8
jmp 0x101a7ded
mov dword [ebp - 0x10], 0x1e
push 0x1024aa68
push 0x28
push str.internal_error:_entered_unreachable_code_
call fcn.101cc940
add esp, 0xc
jmp 0x101a7ded
mov dword [ebp - 0x10], 0x10
push 0x1024aa68
push 0x28
push str.internal_error:_entered_unreachable_code_
call fcn.101cc940
add esp, 0xc
jmp 0x101a7ded
mov dword [ebp - 0x10], 0xd
push 0x1024aa68
push 0x28
push str.internal_error:_entered_unreachable_code_
call fcn.101cc940
add esp, 0xc
jmp 0x101a7ded
call dword [sym.imp.kernel32.dll_GetLastError]
mov byte [ebp - 0xa4], 0
mov dword [ebp - 0xa0], eax
lea eax, [ebp - 0xa4]
mov dword [ebp - str.failure_getting_env_string_from_OS:__], 0x1024a4f0
mov dword [ebp - 0x574], 1
mov dword [ebp - 0x568], 0
mov dword [ebp - 0x10], 8
mov dword [ebp - 0x120], eax
lea eax, [ebp - 0x120]
mov dword [ebp - 0x11c], fcn.101979c0
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x56c], 1
lea eax, [ebp - 0x578]
push 0x1024a4f8
push eax
call fcn.101cc880
add esp, 8
jmp 0x101a7ded
xor eax, eax
jmp 0x101a7d6c
mov eax, 1
mov byte [ebp - 0x21], 1
mov dword [ebp - 0x10], 9
push dword [ebp - 0x30]
push eax
call fcn.101cc661
add esp, 8
jmp 0x101a7ded
mov dword [ebp - 0x10], 0x1f
push 0x1024aa58
push eax
push ebx
call fcn.101ccc90
add esp, 0xc
jmp 0x101a7ded
mov dword [ebp - 0x10], 0x1e
push 0x1024aa58
push eax
push edx
call fcn.101ccc90
add esp, 0xc
jmp 0x101a7ded
push 0x1024aa58
push eax
push edi
call fcn.101ccc90
add esp, 0xc
jmp 0x101a7ded
push 0x1024aa58
push ecx
push eax
call fcn.101ccc90
add esp, 0xc
jmp 0x101a7ded
mov eax, 2
mov dword [ebp - 0x10], 0x20
push esi
push eax
call fcn.101cc661
add esp, 8
ud2