Function at 0x427ba0
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Resume thread
Terminate thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x481ca0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3b0
push ebx
push esi
push edi
push str.Begin_SR_NtCreateThreadEx_n
push 2
call fcn.00428a80
add esp, 8
lea ecx, [ebp - 0xf0]
call fcn.00428a90
mov esi, dword [ebp + 0x14]
mov edi, dword [ebp + 8]
mov dword [ebp - 4], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x14], 0
test esi, 0x9000
je 0x427d8e
push str.Thread_cloaking_specified_n
push 2
call fcn.00428a80
add esp, 8
lea ecx, [ebp - 0xf0]
push edi
call fcn.004291d0
test al, al
jne 0x427cca
mov esi, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [esi + 4]
mov dword [esi], 0
push edi
mov dword [esi + 0x414], 0x13
call sub.VCRUNTIME140.dll_memset
push 0x208
lea ebx, [esi + 0x20c]
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, str.Cant_initialize_ProcessInfo_class_n
mov esi, 0x10100001
push eax
push 2
call fcn.00428a80
add esp, 8
jmp 0x428a21
lea ecx, [ebp - 0xf0]
call fcn.00428c40
mov dword [ebp - 0x8c], eax
test eax, eax
jne 0x427d80
mov esi, dword [ebp + 0x20]
push 0x208
push eax
lea edi, [esi + 4]
mov dword [esi], eax
push edi
mov dword [esi + 0x414], 0x1d
call sub.VCRUNTIME140.dll_memset
push 0x208
lea ebx, [esi + 0x20c]
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, str.Failed_to_resolve_entrypoint_n
mov esi, 0x10100002
push eax
push 2
call fcn.00428a80
add esp, 8
jmp 0x428a21
lea ecx, [ebp - 0xf0]
call fcn.00428e90
mov dword [ebp - 0x14], eax
mov eax, esi
mov dword [ebp - 0x10], 0
and eax, 0x1000
mov dword [ebp - 0x88], 0
mov edx, 0
mov dword [ebp - 0x90], eax
setne dl
mov dword [ebp - 0x84], 0
mov eax, edx
mov dword [ebp - 0x80], 0
or eax, 4
mov dword [ebp - 0x7c], 0
test esi, 0x2000
mov dword [ebp - 0x78], 0
push 0x40
cmove eax, edx
mov dword [ebp - 0x74], 0
push 0x3000
mov ecx, eax
mov dword [ebp - 0x70], 0x53e58955
or ecx, 2
mov dword [ebp - 0x6c], 0x85085d8b
push 0x6d
test esi, 0x4000
mov dword [ebp - 0x68], 0xc64274db
push 0
cmove ecx, eax
mov dword [ebp - 0x64], 0x7b830103
push edi
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x60], 0xd740014
mov dword [ebp - 0x5c], 0x6414538b
mov dword [ebp - 0x58], 0x241587
mov dword [ebp - 0x54], 0x53890000
mov dword [ebp - 0x50], 0xc73ff14
mov dword [ebp - 0x4c], 0x891053ff
mov dword [ebp - 0x48], 0xa1640443
mov dword [ebp - 0x44], 0x18
mov dword [ebp - 0x40], 0x8934408b
mov dword [ebp - 0x3c], 0x7b830843
mov dword [ebp - 0x38], 0xa740014
mov dword [ebp - 0x34], 0x6414538b
mov dword [ebp - 0x30], 0x241589
mov dword [ebp - 0x2c], 0x3c60000
mov dword [ebp - 0x28], 0xebc03102
mov dword [ebp - 0x24], 0xffc88303
mov dword [ebp - 0x20], 0x4c25d5b
mov byte [ebp - 0x1c], 0
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov ebx, eax
mov dword [ebp + 0x14], ebx
test ebx, ebx
jne 0x427f54
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [ebx + 4]
mov dword [ebx], eax
push edi
mov dword [ebx + 0x414], 0xd2
call sub.VCRUNTIME140.dll_memset
push 0x208
add ebx, 0x20c
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
push dword [eax]
push str.VirtualAllocEx_failed:__08X_n
push 2
call fcn.00428a80
add esp, 0x18
mov esi, 0x10100003
jmp 0x428a21
mov eax, dword [ebp + 0x10]
lea esi, [ebx + 0x18]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x14]
push str.Codecave_allocated_at__p_n
push 2
mov dword [ebp - 0x74], eax
call fcn.00428a80
add esp, 0xc
lea eax, [ebp - 0x88]
push 0
push 0x6d
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x42804d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [ebx + 4]
mov dword [ebx], eax
push edi
mov dword [ebx + 0x414], 0xe5
call sub.VCRUNTIME140.dll_memset
push 0x208
add ebx, 0x20c
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
push dword [eax]
push str.WriteProcessMemory_failed:__08X_n
push 2
call fcn.00428a80
mov eax, dword [ebp + 8]
add esp, 0x18
push 0x8000
push 0
push dword [ebp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov esi, 0x10100004
jmp 0x428a21
push str.Creating_thread_with:_n
push 2
call fcn.00428a80
push esi
push str.pRoutine___p_n
push 3
call fcn.00428a80
push ebx
push str.pArg_______p_n
push 3
call fcn.00428a80
add esp, 0x20
mov ecx, dword [0x7ab564]
cmp dword [ebp - 0x90], 0
mov eax, esi
cmovne eax, dword [ebp - 0x8c]
push 0
push 0
push 0
push 0
push dword [ebp - 0x18]
push ebx
push eax
push edi
push 0
push 0x1fffff
lea eax, [ebp - 0x10]
push eax
call ecx
mov dword [ebp - 0x18], eax
test eax, eax
js 0x428975
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x428975
push ecx
call dword [sym.imp.KERNEL32.dll_GetThreadId]
push eax
push eax
push str.Thread_created_with_TID___06X___06d__n
push 2
call fcn.00428a80
add esp, 0x10
cmp dword [ebp - 0x90], 0
je 0x4283de
push 0x2c8
lea eax, [ebp - 0x3b8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x3bc], 0x1003f
lea eax, [ebp - 0x3bc]
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_GetThreadContext]
test eax, eax
jne 0x4281e7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [ebx + 4]
mov dword [ebx], eax
push edi
mov dword [ebx + 0x414], 0x109
call sub.VCRUNTIME140.dll_memset
push 0x208
add ebx, 0x20c
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
push dword [eax]
push str.GetThreadContext_failed:__08X_n
push 2
call fcn.00428a80
add esp, 0x18
push 0
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp + 8]
push 0x8000
push 0
push dword [ebp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov esi, 0x10100006
jmp 0x428a21
push str.Loaded_thread_context_n
push 2
call fcn.00428a80
add esp, 8
mov dword [ebp - 0x30c], esi
lea eax, [ebp - 0x3bc]
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_SetThreadContext]
test eax, eax
jne 0x4282e1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [ebx + 4]
mov dword [ebx], eax
push edi
mov dword [ebx + 0x414], 0x11f
call sub.VCRUNTIME140.dll_memset
push 0x208
add ebx, 0x20c
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
push dword [eax]
push str.SetThreadContext_failed:__08X_n
push 2
call fcn.00428a80
add esp, 0x18
push 0
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp + 8]
push 0x8000
push 0
push dword [ebp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov esi, 0x10100007
jmp 0x428a21
push str.Thread_redirected_n
push 2
call fcn.00428a80
add esp, 8
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
cmp eax, 0xffffffff
jne 0x4283cf
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [ebx + 4]
mov dword [ebx], eax
push edi
mov dword [ebx + 0x414], 0x12f
call sub.VCRUNTIME140.dll_memset
push 0x208
add ebx, 0x20c
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
push dword [eax]
push str.ResumeThread_failed:__08X_n
push 2
call fcn.00428a80
add esp, 0x18
push 0
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp + 8]
push 0x8000
push 0
push dword [ebp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov esi, 0x10100008
jmp 0x428a21
push str.Thread_resumed_n
push 2
call fcn.00428a80
add esp, 8
push str.Entering_wait_state_n
push 2
call fcn.00428a80
add esp, 8
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp - 0x10]
push dword [ebp + 0x1c]
mov dword [ebp - 0xb4], eax
mov eax, dword [0x7ab4ec]
mov dword [ebp - 0xb0], eax
lea eax, [ebp - 0xb4]
push 0
push eax
push 2
mov dword [ebp - 0x94], 0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x42861a
mov esi, dword [ebp + 0x20]
lea ecx, [esi + 4]
mov dword [ebp + 0x14], ecx
lea edx, [esi + 0x20c]
mov dword [ebp - 0x14], edx
cmp eax, 1
jne 0x42851d
push 0x208
push 0
push ecx
mov dword [esi], eax
mov dword [esi + 0x414], 0x150
call sub.VCRUNTIME140.dll_memset
push 0x208
lea eax, [esi + 0x20c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
mov eax, dword [ebp + 0x14]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push dword [ebp - 0x14]
call sub.VCRUNTIME140.dll_memcpy
push str.Interrupt__n
push 2
call fcn.00428a80
add esp, 0x14
jmp 0x4285d7
cmp eax, 0xffffffff
jne 0x428541
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x208
mov dword [esi], eax
lea eax, [esi + 4]
push 0
mov dword [esi + 0x414], 0x158
push eax
jmp 0x428555
push 0x208
push 0
mov dword [esi], eax
mov dword [esi + 0x414], 0x15c
push ecx
call sub.VCRUNTIME140.dll_memset
push 0x208
lea eax, [esi + 0x20c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push dword [ebp + 0x14]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push dword [ebp - 0x14]
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
add esp, 0xc
push dword [eax]
push str.WaitForSingleObject_failed:__08X_n
push 2
call fcn.00428a80
add esp, 0xc
push 0
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x8000
push 0
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
cmp dword [ebp - 0x18], 1
jne 0x4287f1
push dword [0x7ab4ec]
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov esi, 0x10000004
jmp 0x428a21
push str.Thread_finished_execution_n
push 2
call fcn.00428a80
add esp, 8
lea eax, [ebp - 0x94]
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
jne 0x428703
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [ebx + 4]
mov dword [ebx], eax
push edi
mov dword [ebx + 0x414], 0x175
call sub.VCRUNTIME140.dll_memset
push 0x208
add ebx, 0x20c
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
push dword [eax]
push str.GetExitCodeThread_failed:__08X_n
push 2
call fcn.00428a80
add esp, 0x18
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp + 8]
push 0x8000
push 0
push dword [ebp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov esi, 0x1010000a
jmp 0x428a21
push 0
push 0x18
lea eax, [ebp - 0xac]
push eax
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [ebp - 0x10]
mov dword [ebp + 0x14], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x8000
push 0
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
test esi, esi
je 0x4287fb
push str.Thread_exit_data_retrieved_n
push 2
call fcn.00428a80
add esp, 8
cmp dword [ebp - 0xac], 2
je 0x4287fb
mov esi, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [esi + 4]
mov dword [esi], 0
push edi
mov dword [esi + 0x414], 0x18e
call sub.VCRUNTIME140.dll_memset
push 0x208
lea ebx, [esi + 0x20c]
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
push str.Shell_timed_out_n
push 2
call fcn.00428a80
add esp, 0x14
mov esi, 0x10100009
jmp 0x428a21
cmp dword [ebp - 0x94], 0xffffffff
jne 0x4288a6
mov esi, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [esi + 4]
mov dword [esi], 0
push edi
mov dword [esi + 0x414], 0x198
call sub.VCRUNTIME140.dll_memset
push 0x208
lea ebx, [esi + 0x20c]
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
push str.Shellcode_creation_failed_n
push 2
call fcn.00428a80
add esp, 0x14
mov esi, 0x1010000b
jmp 0x428a21
test esi, esi
jne 0x42894e
mov ebx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x14]
push 0x208
push esi
lea edi, [ebx + 4]
mov dword [ebx], eax
push edi
mov dword [ebx + 0x414], 0x1a0
call sub.VCRUNTIME140.dll_memset
push 0x208
add ebx, 0x20c
push esi
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp + 0x20]
push dword [eax]
push str.ReadProcessMemory_failed:__08X_n
push 2
call fcn.00428a80
add esp, 0x18
mov esi, 0x1010000c
jmp 0x428a21
push dword [ebp - 0xa8]
push str.pRoutine_returned:__08X_n
push 2
call fcn.00428a80
mov ecx, dword [ebp + 0x18]
add esp, 0xc
mov eax, dword [ebp - 0xa8]
xor esi, esi
mov dword [ecx], eax
jmp 0x428a21
mov esi, dword [ebp + 0x20]
push 0x208
push 0
lea edi, [esi + 4]
mov dword [esi], eax
push edi
mov dword [esi + 0x414], 0xf5
call sub.VCRUNTIME140.dll_memset
push 0x208
lea ebx, [esi + 0x20c]
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
add esp, 0x20
add eax, 2
push eax
call esi
add eax, eax
push eax
push 0x5c
push str.E:Dworkinjector_srshope_externlGH_Injector_LibraryNtCreateThreadEx.cpp
call sub.VCRUNTIME140.dll_wcsrchr
add esp, 8
add eax, 2
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push str.SR_NtCreateThreadEx
call esi
add eax, eax
push eax
push str.SR_NtCreateThreadEx
push ebx
call sub.VCRUNTIME140.dll_memcpy
push dword [ebp - 0x18]
push str.NtCreateThreadEx_failed:__08X_n
push 2
call fcn.00428a80
mov eax, dword [ebp + 8]
add esp, 0x18
push 0x8000
push 0
push dword [ebp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov esi, 0x10100005
lea ecx, [ebp - 0xf0]
call fcn.00428c10
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret