Function at 0x100289e9
Capabilities:
Resume thread

Disassembly:
mov eax, 0x101356c8
call fcn.1007db34
sub esp, 0x65c
push ebx
push esi
lea eax, [ebp - 0x58]
push edi
push eax
lea eax, [ebp - 0x40]
push dword [ebp + 0x2c]
mov edi, ecx
xor esi, esi
mov dword [ebp - 0x2c], edi
push eax
mov dword [ebp - 0x58], esi
call fcn.1002f4c9
lea eax, [ebp - 0x24]
mov ecx, edi
push eax
lea eax, [ebp - 0x20]
push dword [ebp + 0x10]
mov dword [ebp - 4], esi
mov dword [ebp - 0x24], esi
push eax
call fcn.1002f696
push dword [ebp + 0x14]
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
mov dword [ebp - 0x1c], esi
call fcn.10094520
cmp dword [ebp + 0x10], esi
mov byte [ebp - 4], 2
mov ebx, 0x101ad1f8
jne 0x10028a8d
push esi
mov ecx, ebx
call fcn.1004bccb
test eax, eax
je 0x10028a8d
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
lea eax, [ebp - 0x18]
push dword [ebp - 0x14]
push eax
call fcn.1002f8a9
cmp dword [ebp - 0x1c], esi
mov byte [ebp - 4], 3
je 0x10028a81
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x14]
push eax
call fcn.10094e50
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 2
call fcn.10094cc0
push 4
lea ecx, [ebp - 0x68]
call fcn.1005eb25
mov eax, dword [0x101b04b8]
mov byte [ebp - 4], 4
cmp eax, esi
mov edi, 0x101ad158
je 0x10028ace
push dword [ebp - 0x14]
mov ecx, edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
call fcn.100aa1c0
push eax
push str.__s___CSafeInject::OnCreateProcessAsUserW___App:_s___Cmd:_s_____s_
push 0x101786b8
push 4
call fcn.1007bb15
add esp, 0x1c
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 2
call fcn.1005eb48
mov ecx, edi
call fcn.10057e76
test eax, eax
je 0x10028b41
mov ecx, 0x101ad158
call fcn.10057c87
test eax, eax
je 0x10028b41
mov ebx, 0x10160a84
mov edi, 0x10160a78
push ebx
push edi
lea ecx, [ebp - 0x14]
call fcn.10096c00
test eax, eax
je 0x10028b12
mov dword [ebp - 0x1c], 1
push ebx
push edi
lea ecx, [ebp - 0x40]
call fcn.10096c00
test eax, eax
je 0x10028b27
mov dword [ebp - 0x58], 1
push ebx
push edi
lea ecx, [ebp - 0x20]
call fcn.10096c00
test eax, eax
je 0x10028b3c
mov dword [ebp - 0x24], 1
mov ebx, 0x101ad1f8
lea eax, [ebp - 0x54]
mov dword [ebp - 0x54], esi
push eax
call fcn.100011ce
test eax, eax
pop ecx
je 0x10028c8f
test byte [ebp - 0x54], 1
je 0x10028c8f
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x24]
mov edi, dword [esi + 0x1c]
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp + 8], eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
mov ebx, dword [esi + 0x20]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x2c]
push eax
push edi
call fcn.1005e85a
mov eax, dword [ebp + 8]
add esp, 0x10
test eax, eax
mov dword [ebp - 0x28], eax
je 0x10028c08
mov ecx, dword [esi + 0xc]
cmp dword [ebp - 0x1c], 0
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x2c]
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x24], eax
jne 0x10028bb9
mov eax, dword [ebp + 0x14]
jmp 0x10028bc7
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
push dword [eax - 8]
call fcn.10095990
cmp dword [ebp - 0x24], 0
mov ecx, dword [ebp + 0x10]
je 0x10028bd3
mov ecx, dword [ebp - 0x20]
push dword [ebp + 0x34]
push dword [ebp + 0x30]
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push eax
push ecx
push dword [ebp + 0xc]
push esi
call dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
mov dword [esi + 0x1c], edi
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x20], ebx
mov dword [esi + 0xc], eax
jmp 0x10028c77
mov edi, dword [esi + 0x18]
test edi, edi
je 0x10028c77
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x1c], 0
jne 0x10028c23
mov eax, dword [ebp + 0x14]
jmp 0x10028c31
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
push dword [eax - 8]
call fcn.10095990
cmp dword [ebp - 0x24], 0
mov ecx, dword [ebp + 0x10]
je 0x10028c3d
mov ecx, dword [ebp - 0x20]
push dword [ebp + 0x34]
push dword [ebp + 0x30]
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push eax
push ecx
push dword [ebp + 0xc]
call edi
mov dword [esi + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test byte [esi + 0xa], 0x80
mov dword [esi + 0x10], eax
je 0x10028c77
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esi + 0x28], eax
cmp dword [ebp - 0x1c], 0
je 0x10028c87
push 0xffffffffffffffff
lea ecx, [ebp - 0x14]
call fcn.10095a60
mov esi, dword [esi + 0x14]
jmp 0x100294cc
mov ecx, 0x82
xor eax, eax
lea edi, [ebp - 0x27e]
mov word [ebp - 0x280], si
rep stosd dword es:[edi], eax
push 4
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x18], esi
call fcn.1005eb25
push dword [ebp + 0x14]
mov ecx, ebx
mov byte [ebp - 4], 5
push dword [ebp + 0x10]
call fcn.1004ee2f
test eax, eax
jne 0x10028cd0
call fcn.100511e1
test eax, eax
jne 0x10028ce9
mov ecx, 0x101ad158
call fcn.10057be9
test eax, eax
je 0x10028d21
mov ecx, ebx
call fcn.1004dc65
test eax, eax
jne 0x10028d21
lea eax, [ebp - 0x280]
push 0x104
push eax
push dword [ebp + 0x14]
push dword [ebp + 0x10]
call fcn.1002bd5f
add esp, 0x10
test eax, eax
je 0x10028d1a
lea eax, [ebp - 0x280]
mov ecx, ebx
push eax
call fcn.1004f0fe
mov dword [ebp - 0x18], eax
jmp 0x10028d21
mov dword [ebp - 0x18], 2
push dword [ebp + 0x14]
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x280]
push eax
call fcn.1002fa4b
test eax, eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x60]
je 0x10028d6e
call fcn.1005eb48
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call fcn.10094cc0
and byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.10094cc0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.10094cc0
xor eax, eax
jmp 0x100294f2
call fcn.1005eb48
cmp dword [ebp - 0x18], esi
jne 0x10028ec5
push 1
lea ecx, [ebp - 0x3c]
call fcn.10001261
mov esi, dword [ebp + 8]
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x24]
mov edi, dword [esi + 0x1c]
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp + 8], eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
mov ebx, dword [esi + 0x20]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x2c]
push eax
push edi
call fcn.1005e85a
mov eax, dword [ebp + 8]
add esp, 0x10
test eax, eax
mov dword [ebp - 0x28], eax
je 0x10028e32
mov ecx, dword [esi + 0xc]
cmp dword [ebp - 0x1c], 0
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x2c]
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x24], eax
jne 0x10028de3
mov eax, dword [ebp + 0x14]
jmp 0x10028df1
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
push dword [eax - 8]
call fcn.10095990
cmp dword [ebp - 0x24], 0
mov ecx, dword [ebp + 0x10]
je 0x10028dfd
mov ecx, dword [ebp - 0x20]
push dword [ebp + 0x34]
push dword [ebp + 0x30]
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push eax
push ecx
push dword [ebp + 0xc]
push esi
call dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
mov dword [esi + 0x1c], edi
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x20], ebx
mov dword [esi + 0xc], eax
jmp 0x10028ea1
mov edi, dword [esi + 0x18]
test edi, edi
je 0x10028ea1
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x1c], 0
jne 0x10028e4d
mov eax, dword [ebp + 0x14]
jmp 0x10028e5b
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
push dword [eax - 8]
call fcn.10095990
cmp dword [ebp - 0x24], 0
mov ecx, dword [ebp + 0x10]
je 0x10028e67
mov ecx, dword [ebp - 0x20]
push dword [ebp + 0x34]
push dword [ebp + 0x30]
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push eax
push ecx
push dword [ebp + 0xc]
call edi
mov dword [esi + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test byte [esi + 0xa], 0x80
mov dword [esi + 0x10], eax
je 0x10028ea1
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esi + 0x28], eax
cmp dword [ebp - 0x1c], 0
je 0x10028eb1
push 0xffffffffffffffff
lea ecx, [ebp - 0x14]
call fcn.10095a60
mov esi, dword [esi + 0x14]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 2
call fcn.1000127e
jmp 0x100294cc
push 0x1019f4bc
lea ecx, [ebp - 0x10]
call fcn.10094520
push 4
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 7
call fcn.1005eb25
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x3c]
mov byte [ebp - 4], 8
push dword [ebp + 0x10]
push eax
call fcn.1002c76a
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 9
call fcn.10094e50
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 8
call fcn.10094cc0
mov eax, dword [ebp - 0x10]
cmp dword [eax - 8], esi
je 0x10028f25
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x10]
call fcn.10094e50
jmp 0x10028f3a
cmp dword [ebp - 0x1c], esi
je 0x10028f2f
lea eax, [ebp - 0x14]
jmp 0x10028f1a
push dword [ebp + 0x14]
lea ecx, [ebp - 0x10]
call fcn.10094f40
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 7
call fcn.1005eb48
push dword [ebp - 0x10]
lea eax, [ebp - 0x280]
mov edi, 0x101aa510
push eax
mov ecx, edi
call fcn.1000a658
test eax, eax
je 0x10028f8a
lea eax, [ebp + 0x14]
mov ecx, edi
push eax
mov dword [ebp + 0x14], esi
push dword [ebp - 0x10]
call fcn.1000a694
cmp dword [ebp + 0x14], esi
je 0x10028f8a
push dword [ebp + 0x14]
lea ecx, [ebp - 0x10]
call fcn.10094f40
push dword [ebp + 0x14]
call fcn.1007de95
pop ecx
push 1
lea ecx, [ebp - 0x64]
call fcn.10001261
and dword [ebp - 0x50], 0
xor eax, eax
lea edi, [ebp - 0x4c]
mov esi, dword [ebp + 8]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [esi + 0x20]
mov edi, dword [esi + 0x1c]
mov dword [ebp - 0x6c], eax
mov eax, dword [esi + 0x24]
mov dword [ebp - 0x5c], eax
xor eax, eax
mov dword [ebp + 8], eax
mov dword [ebp + 0x14], eax
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp + 0x24]
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp + 8]
push eax
push edi
or ebx, 4
call fcn.1005e85a
mov eax, dword [ebp + 0x14]
add esp, 0x10
test eax, eax
mov dword [ebp - 0x3c], eax
je 0x10029052
mov ecx, dword [esi + 0xc]
cmp dword [ebp - 0x24], 0
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp + 8]
mov dword [esi + 0x24], eax
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x1c], ecx
je 0x10029007
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x28], eax
push ecx
mov eax, dword [ebp - 0x10]
push dword [ebp + 0x30]
lea ecx, [ebp - 0x10]
mov eax, dword [eax - 8]
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push ebx
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push eax
call fcn.10095990
push eax
push dword [ebp - 0x28]
push dword [ebp + 0xc]
push esi
call dword [ebp - 0x3c]
mov eax, dword [ebp - 0x6c]
mov dword [esi + 0x1c], edi
mov dword [esi + 0x20], eax
mov eax, dword [ebp - 0x5c]
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x30]
mov dword [esi + 0xc], eax
jmp 0x100290bb
mov edi, dword [esi + 0x18]
test edi, edi
je 0x100290bb
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x24], 0
mov eax, dword [ebp + 0x10]
je 0x1002906e
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x28], eax
push ecx
mov eax, dword [ebp - 0x10]
push dword [ebp + 0x30]
lea ecx, [ebp - 0x10]
mov eax, dword [eax - 8]
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push ebx
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push eax
call fcn.10095990
push eax
push dword [ebp - 0x28]
push dword [ebp + 0xc]
call edi
mov dword [esi + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test byte [esi + 0xa], 0x80
mov dword [esi + 0x10], eax
je 0x100290bb
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esi + 0x28], eax
push 0xffffffffffffffff
lea ecx, [ebp - 0x10]
call fcn.10095a60
cmp dword [ebp - 0x1c], 0
je 0x100290d5
push 0xffffffffffffffff
lea ecx, [ebp - 0x14]
call fcn.10095a60
mov ebx, dword [esi + 0x14]
push 4
lea ecx, [ebp - 0x74]
mov dword [ebp + 0x28], ebx
call fcn.1005eb25
mov eax, dword [0x101b04b8]
mov byte [ebp - 4], 0xb
test eax, eax
je 0x10029126
cmp dword [ebp - 0x24], 0
mov edi, dword [ebp + 0x10]
je 0x100290fe
mov edi, dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push ebx
push dword [ebp + 0x2c]
push dword [ebp - 0x10]
push edi
push 0x623
push str._CSafeInject::OnCreateProcessAsUserW__Line:_d_appname__s__NewCmdLine__s__CurrentDirectory__s__Ret__d__error__d_
push str.SafeInject
push 4
call fcn.1007bb15
add esp, 0x24
test ebx, ebx
je 0x100294a5
lea eax, [ebp - 0x280]
mov edi, 0x101ad1f8
push eax
mov ecx, edi
call fcn.10050190
test eax, eax
jne 0x100291ab
mov ecx, edi
call fcn.1004ed3e
test eax, eax
jne 0x10029175
mov ecx, 0x101ad158
call fcn.10057be9
test eax, eax
je 0x100291ab
lea eax, [ebp - 0x280]
push str.ReaderHostU.exe
push eax
call fcn.1007edba
pop ecx
test eax, eax
pop ecx
je 0x100291ab
push dword [ebp - 0x40]
push 1
push dword [ebp - 0x48]
call fcn.10052dd3
add esp, 0xc
lea ecx, [ebp - 0x34]
call fcn.1007c2fd
lea eax, [ebp - 0x48]
push 1
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xc
call fcn.1007d10b
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xb
call fcn.1007c326
push dword [ebp - 0x48]
lea eax, [ebp - 0x280]
mov ecx, edi
push eax
call fcn.1004cf1a
test eax, eax
je 0x10029212
lea ecx, [ebp - 0x34]
call fcn.1007c2fd
lea eax, [ebp - 0x48]
push 1
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xd
call fcn.1007d10b
cmp dword [0x101b04b8], 0
je 0x10029206
push dword [ebp - 0x48]
lea eax, [ebp - 0x280]
push eax
push 0x635
push str._CSafeInject::OnCreateProcessAsUserW__Line:_d_FileDevice_Allow_it...Proc__s__PID__d_
push str.SafeInject
push 4
call fcn.1007bb15
add esp, 0x18
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xb
call fcn.1007c326
lea eax, [ebp + 0x2c]
and dword [ebp + 0x2c], 0
push eax
push dword [ebp - 0x48]
push dword [ebp - 0x50]
call fcn.10027369
add esp, 0xc
mov dword [ebp + 0x14], eax
test eax, eax
jne 0x10029235
mov eax, dword [ebp - 0x50]
mov dword [ebp + 0x14], eax
push eax
mov edi, 0x101aad04
call fcn.100ab010
test eax, eax
pop ecx
je 0x10029251
mov esi, dword [ebp - 0x18]
cmp esi, 4
je 0x1002925a
xor esi, esi
jmp 0x1002925a
mov edi, dword [0x101ad644]
mov esi, dword [ebp - 0x18]
push edi
lea ecx, [ebp + 0x30]
call fcn.100943c0
mov eax, dword [eax]
push 0
push eax
mov byte [ebp - 4], 0xe
call fcn.1007344b
mov ebx, eax
pop ecx
neg ebx
pop ecx
mov byte [ebp - 4], 0xb
sbb bl, bl
lea ecx, [ebp + 0x30]
inc bl
call fcn.10094cc0
test bl, bl
je 0x1002928d
xor esi, esi
xor ebx, ebx
call fcn.100bc6f0
test eax, eax
je 0x100292a3
push str.tsysdrv.dll
call fcn.100d6050
pop ecx
cmp esi, 1
jne 0x100292b6
push edi
push dword [ebp - 0x4c]
push dword [ebp + 0x14]
call fcn.100d7160
jmp 0x100292e5
cmp esi, 2
je 0x100292d1
cmp esi, 4
jne 0x100292d5
push edi
push dword [ebp - 0x48]
call fcn.10059a8e
mov ebx, eax
pop ecx
test ebx, ebx
pop ecx
jne 0x100292ea
push 0
jmp 0x100292dc
cmp esi, 3
jne 0x100292ea
push 1
push edi
push dword [ebp + 0x14]
call fcn.100d7370
add esp, 0xc
mov ebx, eax
cmp dword [0x101b04b8], 0
je 0x1002931f
lea eax, [ebp - 0x280]
push eax
push ebx
push esi
mov esi, 0x101ad158
mov ecx, esi
call fcn.100aa1c0
push eax
push str.__s___CSafeInject::OnCreateProcessAsUserW___Type:_d__Inject__d____s_
push str.SafeInject
push 4
call fcn.1007bb15
add esp, 0x1c
jmp 0x10029324
mov esi, 0x101ad158
mov ecx, esi
call fcn.10057df6
test eax, eax
je 0x10029470
cmp dword [ebp + 0x10], 0
je 0x10029470
push dword [ebp + 0x10]
call fcn.10057a13
cmp eax, 0x310
pop ecx
jne 0x10029470
mov ecx, esi
call fcn.100aa440
push eax
lea ecx, [ebp + 0x10]
call fcn.10094520
mov eax, dword [0x101b04b8]
mov byte [ebp - 4], 0xf
test eax, eax
mov ebx, str.SafeDoc
je 0x1002938b
push dword [ebp + 0x10]
push 0x695
push str._CSafeInject::OnCreateProcessAsUserW__Line:_d__Cmd__s_
push ebx
push 4
call fcn.1007bb15
add esp, 0x14
mov edx, dword [ebp + 0x10]
cmp dword [edx - 8], 0
je 0x10029464
xor esi, esi
xor eax, eax
lea edi, [ebp - 0x30]
mov dword [ebp - 0x34], esi
stosd dword es:[edi], eax
mov ecx, 0xf9
lea edi, [ebp - 0x666]
mov word [ebp - 0x668], si
push 0x1f3
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x668]
push edx
push eax
call fcn.1007e246
lea eax, [ebp - 0x34]
push 2
push eax
lea eax, [ebp - 0x668]
push eax
call fcn.100271ef
add esp, 0x18
cmp eax, 2
jne 0x10029446
cmp dword [0x101b04b8], esi
je 0x10029408
push dword [ebp - 0x30]
push dword [ebp - 0x34]
push 0x6a7
push str._CSafeInject::OnCreateProcessAsUserW__Line:_d__Cmd1__s___Cmd2__s_
push ebx
push 4
call fcn.1007bb15
add esp, 0x18
push dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
call fcn.1002c5b0
mov edi, eax
push edi
push dword [ebp - 0x48]
call fcn.1000a24d
cmp dword [0x101b04b8], esi
pop ecx
pop ecx
je 0x10029464
push dword [ebp + 0x10]
push dword [ebp - 0x48]
push edi
push 0x6ae
push str._CSafeInject::OnCreateProcessAsUserW__Line:_d__Enable__d__PID__d__Cmd__s_
push ebx
push 4
call fcn.1007bb15
add esp, 0x1c
jmp 0x10029464
cmp dword [0x101b04b8], esi
je 0x10029464
push eax
push 0x6a2
push str._CSafeInject::OnCreateProcessAsUserW__Line:_d__iCount__d_
push ebx
push 4
call fcn.1007bb15
add esp, 0x14
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0xb
call fcn.10094cc0
cmp dword [ebp + 0x2c], 0
je 0x1002947f
push dword [ebp + 0x14]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test byte [ebp + 0x24], 4
jne 0x1002948e
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
cmp dword [ebp + 0x34], 0
je 0x100294a5
lea eax, [ebp - 0x50]
push 0x10
push eax
push dword [ebp + 0x34]
call fcn.1007dea0
add esp, 0xc
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0xa
call fcn.1005eb48
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 7
call fcn.1000127e
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call fcn.10094cc0
mov esi, dword [ebp + 0x28]
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call fcn.10094cc0
and byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.10094cc0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.10094cc0
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 0x30