Function at 0x1000189d
Capabilities:
Check if file exists
Create process on windows
Get file attributes

Disassembly:
jmp 0x1000c2b0
push 0xffffffffffffffff
push 0x101e8bbe
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x174
push ebp
push esi
push edi
mov ebp, ecx
call fcn.10001c12
mov ecx, 0x10
xor eax, eax
lea edi, [esp + 0x3c]
mov dword [esp + 0x38], 0x44
rep stosd dword es:[edi], eax
mov dword [esp + 0x2c], eax
xor esi, esi
mov dword [esp + 0x30], eax
push 0x10294024
lea ecx, [esp + 0x24]
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x38], eax
call fcn.101d2b7a
push 0x10265af4
lea ecx, [esp + 0x18]
mov dword [esp + 0x18c], esi
call fcn.101d2b7a
push 0x10294024
lea ecx, [esp + 0x1c]
mov byte [esp + 0x18c], 1
call fcn.101d2b7a
mov byte [esp + 0x188], 2
call fcn.101e4099
mov edx, eax
cmp edx, esi
je 0x1000c3b7
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x7d]
mov byte [esp + 0x7c], 0
rep stosd dword es:[edi], eax
mov edx, dword [edx + 8]
lea ecx, [esp + 0x7c]
stosw word es:[edi], ax
push 0x104
push ecx
push edx
stosb byte es:[edi], al
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edi, [esp + 0x7c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x1000c3b7
lea eax, [esp + 0x7c]
lea ecx, [esp + 0x14]
push eax
call fcn.101d2c95
lea ecx, [esp + 0x7c]
push 0x5c
push ecx
call fcn.10033c42
add esp, 8
cmp eax, esi
je 0x1000c3b7
lea edx, [esp + 0x7c]
lea ecx, [esp + 0x18]
push edx
mov byte [eax], 0
call fcn.101d2c95
mov eax, dword [0x1077f6f0]
cmp eax, esi
je 0x1000c431
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x1c]
push eax
call fcn.1004b5e0
mov esi, eax
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x188], 3
push ecx
lea ecx, [esp + 0x10]
call fcn.1004b5e0
mov edx, dword [esi]
mov eax, dword [eax]
push edx
push eax
push str.CMonClientThread::RunServerProc___Module__s__Dir__s_
push str.ModeMgr
push 0xffffffffffffffff
push 0x1077ee5c
mov byte [esp + 0x1a0], 4
call fcn.1005bc20
add esp, 0x18
lea ecx, [esp + 0xc]
mov byte [esp + 0x188], 3
call fcn.1004bf60
lea ecx, [esp + 0x1c]
mov byte [esp + 0x188], 2
call fcn.1004bf60
xor esi, esi
push 0x10294024
lea ecx, [esp + 0x14]
call fcn.101d2b7a
mov byte [esp + 0x188], 5
call fcn.100fe600
test eax, eax
push str.winrdlv3.exe
je 0x1000c467
call fcn.10001479
push eax
lea ecx, [esp + 0x18]
push 0x10265a5c
push ecx
jmp 0x1000c477
call fcn.10001744
push eax
lea edx, [esp + 0x18]
push 0x10265a5c
push edx
call fcn.101cb906
mov eax, dword [esp + 0x20]
add esp, 0x10
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x1000c4c5
call fcn.10001479
mov ecx, dword [esp + 0x18]
push eax
push ecx
call fcn.10033aad
add esp, 8
test eax, eax
je 0x1000c54b
call fcn.10001744
mov edx, dword [esp + 0x18]
push eax
push edx
call fcn.10033aad
add esp, 8
test eax, eax
je 0x1000c54b
call fcn.100fe600
test eax, eax
push str.rundll32.exe
je 0x1000c4e5
call fcn.10001479
push eax
lea eax, [esp + 0x18]
push 0x10265a5c
push eax
jmp 0x1000c4f5
call fcn.10001744
push eax
lea ecx, [esp + 0x18]
push 0x10265a5c
push ecx
call fcn.101cb906
add esp, 0x10
lea ecx, [esp + 0xc]
push 0x10294024
call fcn.101d2b7a
mov edx, dword [esp + 0x14]
lea eax, [esp + 0xc]
push edx
push str.__s_
push eax
mov byte [esp + 0x194], 6
call fcn.101cb906
add esp, 0xc
lea ecx, [esp + 0xc]
push ecx
lea ecx, [esp + 0x18]
call fcn.101d2c45
lea ecx, [esp + 0xc]
mov byte [esp + 0x188], 5
call fcn.101d2b0c
jmp 0x1000c559
push 0x10265af4
lea ecx, [esp + 0x18]
call fcn.101d2c95
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push str.RunService
push edx
push eax
lea ecx, [esp + 0x2c]
push str._s__s__s
push ecx
call fcn.101cb906
mov eax, dword [0x1077f6f0]
add esp, 0x14
cmp eax, esi
je 0x1000c5c6
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x1c]
push edx
call fcn.1004b5e0
mov eax, dword [eax]
mov byte [esp + 0x188], 7
push eax
push str.CMonClientThread::RunServerProc____s
push str.ModeMgr
push 0xffffffffffffffff
push 0x1077ee5c
call fcn.1005bc20
add esp, 0x14
lea ecx, [esp + 0x1c]
mov byte [esp + 0x188], 5
call fcn.1004bf60
lea ecx, [esp + 0x28]
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x38]
push ecx
push edx
push esi
push esi
push esi
push esi
push esi
push esi
push eax
push esi
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
cmp eax, esi
jne 0x1000c674
mov ecx, dword [0x1026a7a0]
mov dword [esp + 0xc], ecx
mov byte [esp + 0x188], 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea edx, [esp + 0x10]
push str._CreateProcess_Err:_08x
push edx
call fcn.101cb906
mov eax, dword [0x1077f6f0]
add esp, 0xc
cmp eax, esi
je 0x1000c661
mov eax, dword [esp + 0xc]
lea ecx, [esp + 0x1c]
push eax
call fcn.1004b5e0
mov ecx, dword [eax]
mov byte [esp + 0x188], 9
push ecx
push str.CMonClientThread::RunServerProc____s
push str.ModeMgr
push 0xffffffffffffffff
push 0x1077ee5c
call fcn.1005bc20
add esp, 0x14
lea ecx, [esp + 0x1c]
mov byte [esp + 0x188], 8
call fcn.1004bf60
lea ecx, [esp + 0xc]
mov byte [esp + 0x188], 5
call fcn.101d2b0c
jmp 0x1000c692
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
push eax
mov dword [ebp + 0x28], edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
mov dword [esp + 0x24], eax
mov dword [ebp + 0x24], eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x188], 2
call fcn.101d2b0c
lea ecx, [esp + 0x18]
mov byte [esp + 0x188], 1
call fcn.101d2b0c
lea ecx, [esp + 0x14]
mov byte [esp + 0x188], 0
call fcn.101d2b0c
lea ecx, [esp + 0x20]
mov dword [esp + 0x188], 0xffffffff
call fcn.101d2b0c
mov ecx, dword [esp + 0x180]
mov eax, dword [esp + 0x24]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x180
ret