Function at 0x10026fcb
Capabilities:
Link many functions at runtime
Resume thread

Disassembly:
push ebp
sub esp, 0xc00
lea ebp, [esp - 4]
mov eax, dword [0x10083adc]
xor eax, ebp
mov dword [ebp + 0xc00], eax
push 4
mov eax, 0x1005ec5e
call fcn.10046ef2
mov eax, dword [ebp + 0xc0c]
mov edi, dword [ebp + 0xc10]
mov dword [ebp - 0x10], eax
mov eax, dword [0x1015568c]
mov esi, 0x97
xor ebx, ebx
cmp eax, esi
je 0x1002701a
cmp eax, 4
je 0x1002701a
cmp eax, 0x99
jne 0x1002702b
push dword [edi + 8]
push str.call_Engine_start_PID__d_
push ebx
call fcn.1004122a
add esp, 0xc
cmp edi, ebx
je 0x1002756c
mov eax, dword [edi]
cmp eax, ebx
je 0x1002756c
push eax
call fcn.1002c3f8
pop ecx
test eax, eax
je 0x100270c5
push str.TC_IO32
push ebx
call dword [sym.imp.USER32.dll_FindWindowA]
mov dword [ebp - 0x10], eax
cmp eax, ebx
je 0x1002756c
mov eax, dword [0x1015568c]
cmp eax, esi
je 0x10027074
cmp eax, 4
je 0x10027074
cmp eax, 0x99
jne 0x10027085
push dword [edi + 8]
push str.TC_IO32_start_PID__d_
push ebx
call fcn.1004122a
add esp, 0xc
test byte [0x102d2d98], 8
push 0
pop eax
setne al
lea eax, [eax + eax + 2]
push eax
push dword [edi + 8]
push 0x1798
push dword [ebp - 0x10]
call dword [sym.imp.USER32.dll_PostMessageA]
test byte [ebp + 0xc14], 4
jne 0x1002756c
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x10027563
cmp byte [0x1015088b], bl
je 0x100270fe
mov eax, dword [0x1015568c]
cmp eax, esi
je 0x100270e2
cmp eax, 4
je 0x100270e2
cmp eax, 0x99
jne 0x100270f3
push dword [edi + 8]
push str.call_Engine_2_start_PID__d_
push ebx
call fcn.1004122a
add esp, 0xc
push ebx
push dword [edi + 8]
push 0xd03
jmp 0x1002709f
cmp dword [0x10077cd8], 0x501
je 0x1002758f
test byte [0x102d2d98], 8
jne 0x10027123
cmp byte [ebp + 0xc18], bl
jne 0x1002758f
mov eax, dword [0x1015568c]
cmp eax, esi
je 0x10027138
cmp eax, 4
je 0x10027138
cmp eax, 0x99
jne 0x10027149
push dword [edi + 8]
push str.InjectDll2_EZH_INJ_start_PID__d_
push ebx
call fcn.1004122a
add esp, 0xc
cmp dword [0x10184ec0], ebx
jne 0x10027351
mov esi, 0x1ff
push esi
lea eax, [ebp + 0x801]
push ebx
push eax
mov byte [ebp + 0x800], bl
call fcn.10044b80
push esi
lea eax, [ebp + 0xa01]
push ebx
push eax
mov byte [ebp + 0xa00], bl
call fcn.10044b80
push esi
lea eax, [ebp + 0x601]
push ebx
push eax
mov byte [ebp + 0x600], bl
call fcn.10044b80
push esi
lea eax, [ebp + 0x401]
push ebx
push eax
mov byte [ebp + 0x400], bl
call fcn.10044b80
push esi
lea eax, [ebp + 0x201]
push ebx
push eax
mov byte [ebp + 0x200], bl
call fcn.10044b80
push esi
lea eax, [ebp + 1]
push ebx
push eax
mov byte [ebp], bl
call fcn.10044b80
add esp, 0x48
mov esi, 0x100614b0
mov eax, str.__s_12
cmp byte [0x10083690], bl
jne 0x100271e3
mov eax, esi
push str.LhSetExclusiveACL
push eax
lea eax, [ebp + 0xa00]
push eax
call fcn.10044ec8
add esp, 0xc
mov eax, str.__s_16
cmp byte [0x10083690], bl
jne 0x10027207
mov eax, esi
push str.LhInstallHook
push eax
lea eax, [ebp + 0x600]
push eax
call fcn.10044ec8
add esp, 0xc
mov eax, str.__s_0
cmp byte [0x10083690], bl
jne 0x1002722b
mov eax, esi
push str.LhUninstallAllHooks
push eax
lea eax, [ebp + 0x400]
push eax
call fcn.10044ec8
add esp, 0xc
mov eax, str.__s_0
cmp byte [0x10083690], bl
jne 0x1002724f
mov eax, esi
push str.LhWaitForPendingRemovals
push eax
lea eax, [ebp + 0x200]
push eax
call fcn.10044ec8
add esp, 0xc
cmp byte [0x10083690], bl
je 0x10027271
mov esi, str.__s_28
push str.RhInjectLibrary
lea eax, [ebp]
push esi
push eax
call fcn.10044ec8
add esp, 0xc
cmp byte [0x10083690], bl
je 0x100272a5
cmp dword [0x10077cd8], 0x501
jg 0x1002729e
mov eax, str.RFxEZH32.dll
jmp 0x100272bb
mov eax, str.AF_EZH32.dll
jmp 0x100272bb
cmp dword [0x10077cd8], 0x501
mov eax, str.RFxEZH64.dll
jle 0x100272bb
mov eax, str.AF_EZH64.dll
push eax
push 0x10153e28
lea eax, [ebp + 0x800]
push str._s_s
push eax
call fcn.10044ec8
add esp, 0x10
lea eax, [ebp + 0x800]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [ebp + 0xa00]
push ecx
push eax
mov dword [0x10184ecc], eax
call esi
mov dword [0x10184eb0], eax
lea eax, [ebp + 0x600]
push eax
push dword [0x10184ecc]
call esi
mov dword [0x10184eb4], eax
lea eax, [ebp + 0x400]
push eax
push dword [0x10184ecc]
call esi
mov dword [0x10184eb8], eax
lea eax, [ebp + 0x200]
push eax
push dword [0x10184ecc]
call esi
mov dword [0x10184ebc], eax
lea eax, [ebp]
push eax
push dword [0x10184ecc]
call esi
mov dword [0x10184ec0], eax
cmp eax, ebx
je 0x100274ea
push 3
lea eax, [ebp + 0xb00]
mov esi, 0x10153c28
push esi
lea ecx, [ebp + 0xafc]
mov dword [ebp + 0xafc], eax
call fcn.1000cc50
push ebx
push ebx
push ebx
push dword [ebp + 0xafc]
mov dword [ebp - 4], ebx
push ebx
push ebx
push dword [edi + 8]
call dword [0x10184ec0]
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x10], eax
lea eax, [ebp + 0xb00]
cmp dword [ebp + 0xafc], eax
je 0x100273a8
push dword [ebp + 0xafc]
call fcn.100469c3
pop ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xc0000225
je 0x1002749d
cmp eax, ebx
je 0x10027426
cmp eax, 0xc00000f3
je 0x10027426
cmp eax, 0xc00000f2
je 0x10027426
push 0x46
call dword [sym.imp.KERNEL32.dll_Sleep]
push 3
lea eax, [ebp + 0xb00]
push esi
lea ecx, [ebp + 0xafc]
mov dword [ebp + 0xafc], eax
call fcn.1000cc50
push ebx
push ebx
push ebx
push dword [ebp + 0xafc]
mov dword [ebp - 4], 1
push ebx
push ebx
push dword [edi + 8]
call dword [0x10184ec0]
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x10], eax
lea eax, [ebp + 0xb00]
cmp dword [ebp + 0xafc], eax
je 0x10027426
push dword [ebp + 0xafc]
call fcn.100469c3
pop ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xc0000225
je 0x1002749d
cmp eax, ebx
je 0x1002749d
cmp eax, 0xc00000f3
je 0x1002749d
cmp eax, 0xc00000f2
je 0x1002749d
push 0x46
call dword [sym.imp.KERNEL32.dll_Sleep]
push 3
lea eax, [ebp + 0x900]
push esi
lea ecx, [ebp + 0x8fc]
mov dword [ebp + 0x8fc], eax
call fcn.1000cc50
push ebx
push ebx
push ebx
push dword [ebp + 0x8fc]
mov dword [ebp - 4], 2
push ebx
push ebx
push dword [edi + 8]
call dword [0x10184ec0]
or dword [ebp - 4], 0xffffffff
lea eax, [ebp + 0x900]
cmp dword [ebp + 0x8fc], eax
je 0x1002749d
push dword [ebp + 0x8fc]
call fcn.100469c3
pop ecx
test byte [ebp + 0xc14], 4
jne 0x100274b7
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [edi + 4]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov eax, dword [0x1015568c]
cmp eax, 0x97
je 0x100274d3
cmp eax, 4
je 0x100274d3
cmp eax, 0x99
jne 0x1002756c
push esi
push dword [edi + 8]
push str.InjectDll2_EZH_tc_P:_d__s
push ebx
call fcn.1004122a
add esp, 0x10
jmp 0x1002756c
mov eax, dword [0x1015568c]
cmp eax, 0x97
je 0x10027502
cmp eax, 4
je 0x10027502
cmp eax, 0x99
jne 0x10027514
push str.InjectDll2_MS_INJ_start
push ebx
call fcn.1004122a
mov eax, dword [0x1015568c]
pop ecx
pop ecx
mov esi, 0x97
cmp eax, esi
je 0x10027529
cmp eax, 4
je 0x10027529
cmp eax, 0x99
jne 0x1002753a
push dword [edi + 8]
push str.call_Engine_xxx_start_PID__d_
push ebx
call fcn.1004122a
add esp, 0xc
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x64
call esi
push ebx
push dword [edi + 8]
push 0xd03
push dword [ebp - 0x10]
call dword [sym.imp.USER32.dll_PostMessageA]
test byte [ebp + 0xc14], 4
jne 0x1002756c
push 0x64
call esi
push dword [edi + 4]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xc00]
xor ecx, ebp
call fcn.10044b6f
add ebp, 0xc04
leave
ret
mov eax, dword [0x1015568c]
cmp eax, esi
je 0x100275a8
cmp eax, 4
je 0x100275a8
cmp eax, 0x99
jne 0x10027519
push str.InjectDll3_MS_INJ_start
push ebx
call fcn.1004122a
mov eax, dword [0x1015568c]
pop ecx
pop ecx
jmp 0x10027519