Function at 0x4a5b80
Capabilities:
Create process on windows
Create process suspended
Create thread
Delete file
Get common file path
Get file size
Self delete
Terminate process
Terminate thread
Write and execute a file
Write file on windows

Disassembly:
push edi
xor edx, edx
mov ecx, 0x10
mov eax, edx
lea edi, [esp + 8]
and esp, 0xfffffff8
push dword [edi - 4]
push ebp
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x924]
push ebx
sub esp, 0x9ec
mov ebx, dword [0x79e7f4]
mov dword [ebp - 0x928], 0x44
rep stosd dword es:[edi], eax
test ebx, ebx
je 0x4a8510
mov ecx, dword [0x79e804]
test ecx, ecx
je 0x4a81d8
mov edx, dword [0x79e800]
test edx, edx
je 0x4a81d8
mov eax, dword [0x79e7f0]
test eax, eax
je 0x4a81b0
mov eax, dword [0x79e7ec]
test eax, eax
je 0x4a81b0
mov dword [esp], 1
lea ebx, [ebp - 0x6ec]
call dword [sym.imp.kernel32.dll_SetErrorMode]
sub esp, 4
mov dword [esp + 4], ebx
mov dword [esp], 0x104
call dword [sym.imp.kernel32.dll_GetTempPathA]
lea eax, [ebp - 0x5e8]
sub esp, 8
mov dword [esp], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5d3758
call dword [sym.imp.kernel32.dll_GetTempFileNameA]
lea eax, [ebp - 0x5e8]
sub esp, 0x10
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x40000000
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CreateFileA]
sub esp, 0x1c
mov ebx, eax
cmp eax, 0xffffffff
je 0x4a8530
mov edi, dword [sym.imp.kernel32.dll_WriteFile]
lea eax, [ebp - 0x998]
mov esi, dword fs:[0x18]
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x40
mov dword [esp + 4], 0x79e760
mov dword [esp], ebx
mov dword [ebp - 0x99c], edi
call edi
lea edi, [ebp - 0x8dc]
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xe7e
call fcn.0049f440
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.WriteFile_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
xor eax, eax
mov ecx, 0x3c
mov dword [ebp - 0x8e4], 0x4550
rep stosd dword es:[edi], eax
mov eax, 4
mov edi, 0x10b
mov dword [ebp - 0x8b0], 0x10000000
mov word [ebp - 0x8a4], ax
mov eax, 1
mov word [ebp - 0x8a0], ax
mov eax, 4
mov word [ebp - 0x89c], ax
lea eax, [ebp - 0x998]
mov word [ebp - 0x8cc], di
mov dword [ebp - 0x894], 0x1160
mov dword [ebp - 0x888], 0x1400003
mov dword [ebp - 0x884], 0x100000
mov dword [ebp - 0x880], 0x1000
mov dword [ebp - 0x87c], 0x100000
mov dword [ebp - 0x878], 0x1000
mov dword [ebp - 0x870], 0x10
mov dword [ebp - 0x8ac], 0x1000
mov dword [ebp - 0x8a8], 0x200
mov dword [ebp - 0x890], 0x160
mov dword [ebp - 0x8e0], 0x1014c
mov dword [ebp - 0x8d0], 0x200200e0
mov byte [ebp - 0x8ca], 1
mov dword [ebp - 0x8b8], 0x10
mov dword [ebp - 0x8bc], 0x1000
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x8e4]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x18
mov dword [esp + 4], eax
mov dword [esp], ebx
mov edi, dword [ebp - 0x99c]
call edi
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xe88
call fcn.0049f440
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.WriteFile_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x998]
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x8cc]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xe0
mov dword [esp + 4], eax
mov dword [esp], ebx
call edi
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xe8b
call fcn.0049f440
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.WriteFile_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [ebp - 0x8a8]
mov dword [0x57f2d0], 7
mov dword [0x57f2c8], 7
mov dword [0x57f2d4], eax
mov eax, dword [ebp - 0x8ac]
mov dword [0x57f2e4], 0x60000020
mov dword [0x57f2cc], eax
lea eax, [ebp - 0x998]
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x28
mov dword [esp + 4], 0x57f2c0
mov dword [esp], ebx
call edi
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xe94
call fcn.0049f440
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.WriteFile_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [ebp - 0x8a8]
sub eax, dword [ebp - 0x890]
cmp eax, 0xfff
ja 0x4a8652
lea ecx, [ebp - 0x998]
mov dword [esi + 0x34], 0xdeadbeef
mov dword [esp + 0xc], ecx
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0x5d7340
mov edi, dword [ebp - 0x99c]
call edi
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xe9a
call fcn.0049f440
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.WriteFile_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp], ebx
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call dword [sym.imp.kernel32.dll_SetFilePointer]
lea ecx, [ebp - 0x998]
mov dword [esi + 0x34], 0xdeadbeef
sub esp, 0x10
add eax, 1
mov dword [ebp - 0x9a0], eax
mov dword [esp + 0xc], ecx
mov dword [esp], ebx
mov dword [esp + 0x10], 0
mov dword [esp + 8], 7
mov dword [esp + 4], 0x57f2a0
call edi
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xea1
call fcn.0049f440
mov eax, dword [esi + 0x34]
mov dword [esp + 4], str.WriteFile_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp], ebx
mov edi, dword [sym.imp.kernel32.dll_CloseHandle]
lea ebx, [ebp - 0x4e4]
call edi
lea eax, [ebp - 0x988]
sub esp, 4
mov dword [esp], eax
call fcn.0057d960
mov eax, dword [0x79ea50]
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], str.__s__loader__s__lu_0
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_CreateProcessA]
mov dword [ebp - 0x9a4], eax
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xeab
call fcn.0049f440
mov eax, dword [esi + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x2710
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov dword [ebp - 0x99c], eax
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xead
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov ecx, dword [ebp - 0x990]
test ecx, ecx
jne 0x4a84f0
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_GetExitCodeProcess]
mov dword [ebp - 0x9a8], eax
call eax
mov eax, 0xeb0
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_195__got__lu_n
cmp eax, 0xc3
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [0x79ea50]
mov esi, dword [eax]
test esi, esi
jne 0x4a84a0
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
mov eax, dword [0x79ea50]
sub esp, 4
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], str.__s__loader__s__lu_1
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xebd
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x2710
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xebf
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov ecx, dword [ebp - 0x990]
test ecx, ecx
jne 0x4a8480
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov eax, 0xec2
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_195__got__lu_n
cmp eax, 0xc3
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [0x79ea50]
mov esi, dword [eax]
test esi, esi
jne 0x4a8430
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
mov eax, dword [0x79ea50]
sub esp, 4
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], str.__s__loader__s__lu_2
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xecf
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x2710
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xed1
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov ecx, dword [ebp - 0x990]
test ecx, ecx
jne 0x4a8410
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov eax, 0xed4
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_197__got__lu_n
cmp eax, 0xc5
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [0x79ea50]
mov esi, dword [eax]
test esi, esi
jne 0x4a83c0
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
mov eax, dword [0x79ea50]
sub esp, 4
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], str.__s__loader__s__lu_3
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xee1
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x2710
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xee3
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov ecx, dword [ebp - 0x990]
test ecx, ecx
jne 0x4a83a0
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov eax, 0xee6
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_195__got__lu_n
cmp eax, 0xc3
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [0x79ea50]
mov eax, dword [eax]
test eax, eax
jne 0x4a8350
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
mov eax, dword [0x79e7e8]
sub esp, 4
test eax, eax
je 0x4a8200
mov esi, dword [0x79e7e4]
test esi, esi
je 0x4a8200
mov eax, dword [0x79ea50]
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], str.__s__loader__s__lu_4
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xef5
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x2710
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xef7
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov ecx, dword [ebp - 0x990]
test ecx, ecx
jne 0x4a8560
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov eax, 0xefa
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_198__got__lu_n
cmp eax, 0xc6
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [0x79ea50]
mov eax, dword [eax]
test eax, eax
jne 0x4a8608
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
sub esp, 4
mov eax, dword [0x79e7d4]
test eax, eax
je 0x4a8220
mov eax, dword [0x79e7d0]
test eax, eax
je 0x4a8220
mov eax, dword [0x79ea50]
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], str.__s__loader__s__lu_5
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xf0c
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x1388
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf0e
call fcn.0049f440
mov dword [esp + 4], str.child_process_should_fail_to_terminate_n
xor eax, eax
cmp dword [ebp - 0x990], 0x102
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [ebp - 0x990]
test eax, eax
jne 0x4a85d0
mov dword [esp + 4], 0x3e8
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf15
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov esi, dword [ebp - 0x990]
test esi, esi
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov eax, 0xf17
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_199__got__lu_n
cmp eax, 0xc7
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [0x79ea50]
mov eax, dword [eax]
test eax, eax
jne 0x4a8580
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
sub esp, 4
mov eax, dword [0x79ea50]
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], str.__s__loader__s__lu_6
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xf27
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x1388
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
mov ecx, dword [0x8f0770]
sub esp, 8
mov dword [ebp - 0x990], eax
mov dword [ebp - 0x9ac], ecx
call fcn.0057d110
mov ecx, dword [eax + 0x10]
mov dword [eax + 0x14], 1
lea edx, [ecx + ecx]
mov ecx, dword [ebp - 0x9ac]
test ecx, ecx
setne cl
movzx ecx, cl
or edx, ecx
mov dword [eax + 0x10], edx
jmp 0x4a6c09
call fcn.0057d110
mov dword [eax], 0x5d3477
mov dword [eax + 4], 0xf2a
xor eax, eax
mov dword [esp + 4], str.child_process_should_fail_to_terminate_n
cmp dword [ebp - 0x990], 0x102
sete al
mov dword [esp], eax
call fcn.0049fda0
call fcn.0057d110
shr dword [eax + 0x10], 1
call fcn.0057d110
mov edx, dword [eax + 0x14]
mov dword [eax + 0x14], 0
test edx, edx
jne 0x4a6bd0
mov ecx, dword [ebp - 0x990]
test ecx, ecx
jne 0x4a8240
mov dword [esp + 4], 0x3e8
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf31
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov ecx, dword [0x8f0770]
sub esp, 8
mov dword [ebp - 0x9ac], ecx
call fcn.0057d110
mov ecx, dword [eax + 0x10]
mov dword [eax + 0x14], 1
lea edx, [ecx + ecx]
mov ecx, dword [ebp - 0x9ac]
test ecx, ecx
setne cl
movzx ecx, cl
or edx, ecx
mov dword [eax + 0x10], edx
jmp 0x4a6d07
call fcn.0057d110
mov dword [eax], 0x5d3477
mov dword [eax + 4], 0xf34
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_201__got__lu_n
cmp eax, 0xc9
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
call fcn.0057d110
shr dword [eax + 0x10], 1
call fcn.0057d110
mov edx, dword [eax + 0x14]
mov dword [eax + 0x14], 0
test edx, edx
jne 0x4a6cc8
mov eax, dword [0x79ea50]
mov eax, dword [eax]
test eax, eax
jne 0x4a82b0
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
mov eax, dword [0x79ea50]
sub esp, 4
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x9a0]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], ebx
mov dword [esp + 4], str.__s__loader__s__lu_7
mov dword [esp + 8], eax
call fcn.0049efd0
lea eax, [ebp - 0x96c]
mov dword [esp + 4], ebx
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xf41
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x5d4851
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x1388
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf43
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov ebx, dword [ebp - 0x990]
test ebx, ebx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov esi, dword [ebp - 0x990]
test esi, esi
jne 0x4a8278
mov dword [esp + 4], 0x3e8
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf4a
call fcn.0049f440
mov dword [esp + 4], str.child_process_failed_to_terminate_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov eax, 0xf4c
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_199__got__lu_n
cmp eax, 0xc7
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [0x79ea50]
mov ecx, dword [eax]
test ecx, ecx
jne 0x4a8300
mov eax, dword [ebp - 0x968]
mov ebx, dword fs:[0x18]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
lea eax, [ebp - 0x96c]
mov dword [ebx + 0x34], 0xdeadbeef
sub esp, 4
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x928]
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xf58
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x988]
mov eax, dword [eax]
mov dword [esp + 4], 0x5d4851
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], 0x1000
mov dword [esp + 8], 0x1000
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_VirtualAllocEx]
mov dword [ebp - 0x9cc], eax
call eax
sub esp, 0x14
mov dword [ebp - 0x980], eax
mov eax, 0xf5c
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d4ad2
mov dword [esp + 8], eax
mov esi, dword [ebp - 0x980]
xor eax, eax
test esi, esi
setne al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x98c]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0x1000
mov eax, dword [ebp - 0x980]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_VirtualProtectEx]
mov dword [ebp - 0x9c8], eax
call eax
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xf5f
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.VirtualProtectEx_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xf60
call fcn.0049f440
mov eax, dword [ebp - 0x98c]
mov dword [esp + 4], str.expected_PAGE_READWRITE__got__lx_n
cmp eax, 4
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x944]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0xc], 0x1c
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_VirtualQueryEx]
mov dword [ebp - 0x9c4], eax
call eax
sub esp, 0x10
mov dword [ebp - 0x97c], eax
mov eax, 0xf63
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d4b2b
mov dword [esp + 8], eax
xor eax, eax
cmp dword [ebp - 0x97c], 0x1c
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x97c]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x7ec]
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x980]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_ReadProcessMemory]
mov dword [ebp - 0x9bc], eax
call eax
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xf67
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d4b45
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xf68
call fcn.0049f440
mov eax, dword [ebp - 0x97c]
mov dword [esp + 4], str.expected_4__got__Iu_n
cmp eax, 4
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x1000
mov dword [esp + 0xc], 0
mov dword [esp + 8], 4
mov dword [esp + 4], 0
mov dword [esp], 0xffffffff
call dword [sym.imp.kernel32.dll_CreateFileMappingW]
sub esp, 0x18
mov esi, eax
mov dword [ebp - 0x9ac], eax
mov eax, 0xf6c
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d40be
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
setne al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x994]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x18], 2
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov eax, dword [sym.imp.kernel32.dll_DuplicateHandle]
mov dword [esp], 0xffffffff
mov dword [ebp - 0x9b4], eax
call eax
sub esp, 0x1c
mov dword [ebp - 0x990], eax
mov eax, 0xf71
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d4b77
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x97c]
mov dword [ebp - 0x978], 0
mov dword [ebp - 0x974], 0
mov dword [ebp - 0x980], 0
mov dword [ebp - 0x97c], 0
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x978]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x980]
mov dword [esp + 0x24], 2
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [0x79e80c]
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0xf79
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], 0x5d40dc
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [ebp - 0x980]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [0x79e808]
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf7b
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], 0x5d40fc
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x990]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xdeadbeef
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_CreateRemoteThread]
mov dword [ebp - 0x9b8], eax
call eax
sub esp, 0x1c
mov esi, eax
mov eax, 0xf7f
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d40a0
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
setne al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x2dc]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [ebp - 0x2dc], 0x10002
mov dword [esp + 4], eax
mov eax, dword [sym.imp.kernel32.dll_GetThreadContext]
mov dword [esp], esi
mov dword [ebp - 0x9a4], eax
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf83
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.GetThreadContext_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x2dc]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [ebp - 0x2dc], 0x10002
mov dword [esp + 4], eax
mov eax, dword [sym.imp.kernel32.dll_SetThreadContext]
mov dword [esp], esi
mov dword [ebp - 0x9a0], eax
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf87
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.SetThreadContext_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [sym.imp.kernel32.dll_SetThreadPriority]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 4], 0
mov dword [esp], esi
mov dword [ebp - 0x9c0], eax
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf8a
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.SetThreadPriority_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 4], 0xc7
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_TerminateThread]
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf8e
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.TerminateThread_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x3e8
mov dword [esp], esi
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf93
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.WaitForSingleObject_failed:__lx_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
lea ecx, [ebp - 0x990]
mov dword [esp], esi
mov dword [esp + 4], ecx
call dword [sym.imp.kernel32.dll_GetExitCodeThread]
mov eax, 0xf95
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_199__got__lu_n
cmp eax, 0xc7
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 4], 0xc6
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf99
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.TerminateProcess_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp + 4], 0x3e8
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xf9e
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.WaitForSingleObject_failed:__lx_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [ebp - 0x964]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], 0x1f0fff
call dword [sym.imp.kernel32.dll_OpenProcess]
sub esp, 0xc
mov dword [ebp - 0x9b0], eax
mov eax, 0xfa2
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d4067
mov dword [esp + 8], eax
mov ebx, dword [ebp - 0x9b0]
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp], ebx
call edi
xor edx, edx
xor eax, eax
sub esp, 4
mov dword [ebp + eax - 0x95c], edx
add eax, 4
cmp eax, 0x18
jb 0x4a773e
lea eax, [ebp - 0x95c]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x18
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [0x79e804]
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xfa7
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.NtQueryInformationProcess_error__lx_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfa8
call fcn.0049f440
mov eax, dword [ebp - 0x95c]
mov dword [esp + 4], str.expected_198__got__lu_n
cmp eax, 0xc6
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x984]
mov dword [ebp - 0x984], 1
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0x15
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [0x79e800]
sub esp, 0x10
mov dword [ebp - 0x990], eax
mov eax, 0xfab
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_STATUS_PROCESS_IS_TERMINATING__got__lx_n
cmp eax, 0xc000010a
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
mov ebx, dword fs:[0x18]
call fcn.0049fda0
lea eax, [ebp - 0x2dc]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [ebp - 0x2dc], 0x10002
mov dword [esp + 4], eax
mov dword [esp], esi
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xfb0
call fcn.0049f440
mov dword [esp + 4], str.GetThreadContext_should_fail_n
xor eax, eax
mov ecx, dword [ebp - 0x990]
test ecx, ecx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfb1
call fcn.0049f440
mov edx, dword [ebx + 0x34]
mov eax, 1
cmp edx, 0x57
je 0x4a78d3
cmp edx, 0x1f
je 0x4a78d3
cmp edx, 1
je 0x4a78d3
xor eax, eax
cmp edx, 5
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], 0x5d4cd4
mov ebx, dword fs:[0x18]
call fcn.0049fda0
lea eax, [ebp - 0x2dc]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [ebp - 0x2dc], 0x10002
mov dword [esp + 4], eax
mov dword [esp], esi
mov eax, dword [ebp - 0x9a0]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xfb9
call fcn.0049f440
mov dword [esp + 4], str.SetThreadContext_should_fail_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfba
call fcn.0049f440
mov edx, dword [ebx + 0x34]
mov eax, 1
cmp edx, 5
je 0x4a7968
cmp edx, 0x1f
je 0x4a7968
xor eax, eax
cmp edx, 1
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], 0x5d400c
mov ebx, dword fs:[0x18]
call fcn.0049fda0
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp], esi
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x9c0]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xfc0
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.SetThreadPriority_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
mov dword [esp], esi
call edi
sub esp, 4
mov dword [esp + 4], 0x3e8
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
mov eax, dword [ebp - 0x99c]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xfc4
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.WaitForSingleObject_failed:__lx_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x2dc]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [ebp - 0x2dc], 0x10002
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a4]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xfc8
call fcn.0049f440
mov dword [esp + 4], str.GetThreadContext_should_fail_n
xor eax, eax
mov esi, dword [ebp - 0x990]
test esi, esi
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfc9
call fcn.0049f440
mov edx, dword [ebx + 0x34]
mov eax, 1
cmp edx, 0x57
je 0x4a7aa8
cmp edx, 0x1f
je 0x4a7aa8
cmp edx, 1
je 0x4a7aa8
xor eax, eax
cmp edx, 5
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], 0x5d4cd4
mov ebx, dword fs:[0x18]
call fcn.0049fda0
lea eax, [ebp - 0x2dc]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [ebp - 0x2dc], 0x10002
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a0]
call eax
sub esp, 8
mov dword [ebp - 0x990], eax
mov eax, 0xfd1
call fcn.0049f440
mov dword [esp + 4], str.SetThreadContext_should_fail_n
xor eax, eax
mov ecx, dword [ebp - 0x990]
test ecx, ecx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfd2
call fcn.0049f440
mov edx, dword [ebx + 0x34]
mov eax, 1
cmp edx, 5
je 0x4a7b43
cmp edx, 0x1f
je 0x4a7b43
xor eax, eax
cmp edx, 1
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], 0x5d400c
mov ebx, dword fs:[0x18]
call fcn.0049fda0
lea eax, [ebp - 0x98c]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x1000
mov eax, dword [ebp - 0x980]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9c8]
call eax
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xfd8
call fcn.0049f440
mov dword [esp + 4], str.VirtualProtectEx_should_fail_n
xor eax, eax
mov esi, dword [ebp - 0x990]
test esi, esi
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfd9
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d400c
mov dword [esp + 8], eax
xor eax, eax
cmp dword [ebx + 0x34], 5
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x97c]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [ebp - 0x97c], 0
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x7ec]
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x980]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9bc]
call eax
sub esp, 0x14
mov dword [ebp - 0x990], eax
mov eax, 0xfdd
call fcn.0049f440
mov dword [esp + 4], str.ReadProcessMemory_should_fail_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfde
call fcn.0049f440
mov edx, dword [ebx + 0x34]
mov eax, 1
cmp edx, 0x12b
je 0x4a7c8e
xor eax, eax
cmp edx, 5
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], str.expected_ERROR_PARTIAL_COPY__got__ld_n
call fcn.0049fda0
mov eax, 0xfe0
call fcn.0049f440
mov eax, dword [ebp - 0x97c]
mov dword [esp + 4], 0x5d4d82
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
mov ebx, dword fs:[0x18]
call fcn.0049fda0
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0xc], 0x8000
mov dword [esp + 8], 0
mov eax, dword [ebp - 0x980]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_VirtualFreeEx]
sub esp, 0x10
mov dword [ebp - 0x990], eax
mov eax, 0xfe3
call fcn.0049f440
mov dword [esp + 4], 0x5d4d97
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfe4
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d400c
mov dword [esp + 8], eax
xor eax, eax
cmp dword [ebx + 0x34], 5
sete al
mov dword [esp], eax
call fcn.0049fda0
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], 0x1000
mov dword [esp + 8], 0x1000
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9cc]
call eax
sub esp, 0x14
mov dword [ebp - 0x980], eax
mov eax, 0xfe7
call fcn.0049f440
mov dword [esp + 4], 0x5d4db2
xor eax, eax
mov ecx, dword [ebp - 0x980]
test ecx, ecx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfe8
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d400c
mov dword [esp + 8], eax
xor eax, eax
cmp dword [ebx + 0x34], 5
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x944]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0xc], 0x1c
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9c4]
call eax
sub esp, 0x10
mov dword [ebp - 0x97c], eax
mov eax, 0xfeb
call fcn.0049f440
mov dword [esp + 4], str.VirtualQueryEx_should_fail_n
xor eax, eax
mov esi, dword [ebp - 0x97c]
test esi, esi
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xfec
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d400c
mov dword [esp + 8], eax
xor eax, eax
cmp dword [ebx + 0x34], 5
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x994]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x18], 2
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp + 8], eax
mov esi, dword [ebp - 0x9ac]
mov dword [esp], 0xffffffff
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x9b4]
call eax
sub esp, 0x1c
mov dword [ebp - 0x990], eax
mov eax, 0xffb
call fcn.0049f440
mov dword [esp + 4], str.DuplicateHandle_should_fail_n
xor eax, eax
mov edx, dword [ebp - 0x990]
test edx, edx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0xffc
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d400c
mov dword [esp + 8], eax
xor eax, eax
cmp dword [ebx + 0x34], 5
sete al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x97c]
mov dword [ebp - 0x978], 0
mov dword [ebp - 0x974], 0
mov dword [ebp - 0x980], 0
mov dword [ebp - 0x97c], 0
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x978]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x980]
mov dword [esp + 0x24], 2
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [0x79e80c]
sub esp, 0x28
mov dword [ebp - 0x990], eax
mov eax, 0x1004
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_STATUS_PROCESS_IS_TERMINATING__got__lx_n
cmp eax, 0xc000010a
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
lea eax, [ebp - 0x990]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xdeadbeef
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9b8]
call eax
sub esp, 0x1c
mov esi, eax
mov eax, 0x1008
call fcn.0049f440
xor eax, eax
test esi, esi
mov dword [esp + 4], str.CreateRemoteThread_should_fail_n
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0x1009
call fcn.0049f440
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], 0x5d400c
mov dword [esp + 8], eax
xor eax, eax
cmp dword [ebx + 0x34], 5
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [ebp - 0x964]
mov dword [ebx + 0x34], 0xdeadbeef
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DebugActiveProcess]
sub esp, 4
mov dword [ebp - 0x990], eax
mov eax, 0x100d
call fcn.0049f440
mov dword [esp + 4], str.DebugActiveProcess_should_fail_n
xor eax, eax
mov ecx, dword [ebp - 0x990]
test ecx, ecx
sete al
mov dword [esp], eax
call fcn.0049fda0
mov eax, 0x100e
call fcn.0049f440
mov edx, dword [ebx + 0x34]
mov eax, 1
cmp edx, 5
je 0x4a80db
xor eax, eax
cmp edx, 0x32
sete al
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], str.ERROR_ACCESS_DENIED__got__ld_n
call fcn.0049fda0
lea eax, [ebp - 0x990]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
mov eax, dword [ebp - 0x9a8]
call eax
mov eax, 0x1012
sub esp, 8
call fcn.0049f440
mov eax, dword [ebp - 0x990]
mov dword [esp + 4], str.expected_exit_code_198__got__lu_n
cmp eax, 0xc6
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0049fda0
mov eax, dword [ebp - 0x968]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x96c]
sub esp, 4
mov dword [esp], eax
call edi
lea eax, [ebp - 0x5e8]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_DeleteFileA]
sub esp, 4
mov dword [ebp - 0x990], eax
mov eax, 0x1017
call fcn.0049f440
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 4], str.DeleteFile_error__ld_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x990]
mov dword [esp], eax
call fcn.0049fda0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
lea esp, [edi - 8]
pop edi
ret
mov eax, 0xe6a
call fcn.0049f440
mov dword [esp], str.NtAllocateVirtualMemory_NtFreeVirtualMemory_are_not_available_on_this_platform_n
call fcn.0049fd70
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
lea esp, [edi - 8]
pop edi
ret
mov eax, 0xe65
call fcn.0049f440
mov dword [esp], str.NtQueryInformationProcess_NtSetInformationProcess_are_not_available_on_this_platform_n
call fcn.0049fd70
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
lea esp, [edi - 8]
pop edi
ret
mov eax, 0xf04
call fcn.0049f440
mov dword [esp], str.LdrLockLoaderLock_LdrUnlockLoaderLock_are_not_available_on_this_platform_n
call fcn.0049fd70
jmp 0x4a68a5
mov eax, 0xf21
call fcn.0049f440
mov dword [esp], str.RtlAcquirePebLock_RtlReleasePebLock_are_not_available_on_this_platform_n
call fcn.0049fd70
jmp 0x4a6aa9
mov eax, 0xf2d
call fcn.0049f440
mov dword [esp], str.terminating_child_process_n
call fcn.0049f7c0
mov dword [esp + 4], 0xc9
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a6c2a
mov eax, 0xf46
call fcn.0049f440
mov dword [esp], str.terminating_child_process_n
call fcn.0049f7c0
mov dword [esp + 4], 0xc7
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a6e6c
mov eax, 0xf37
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a6d29
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a82e8
jmp 0x4a6d29
mov eax, 0xf4f
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a6f11
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a8338
jmp 0x4a6f11
mov eax, 0xee9
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a66cf
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a8388
jmp 0x4a66cf
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a6673
mov eax, 0xed7
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a6530
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a83f8
jmp 0x4a6530
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a64d4
mov eax, 0xec5
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a6391
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a8468
jmp 0x4a6391
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a6335
mov eax, 0xeb3
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a61f2
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a84d8
jmp 0x4a61f2
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a6191
mov eax, 0xe60
call fcn.0049f440
mov dword [esp], str.RtlDllShutdownInProgress_is_not_available_on_this_platform__XP__n
call fcn.0049fd70
jmp 0x4a81c6
mov eax, 0xe78
call fcn.0049f440
lea eax, [ebp - 0x5e8]
mov dword [esp + 4], 0x5d3769
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.0049fda0
jmp 0x4a81c6
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a682d
mov eax, 0xf1a
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a6a8d
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a85b8
jmp 0x4a6a8d
mov eax, 0xf11
call fcn.0049f440
mov dword [esp], str.terminating_child_process_n
call fcn.0049f7c0
mov dword [esp + 4], 0xc7
mov eax, dword [ebp - 0x96c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
jmp 0x4a69e8
mov eax, 0xefd
call fcn.0049f440
mov eax, dword [0x79ea50]
mov eax, dword [eax]
mov dword [esp], str._ld_failures_in_child_process_n
mov dword [esp + 4], eax
call fcn.0049f7c0
mov eax, dword [0x79ea50]
mov edx, dword [eax]
lea eax, [edx - 1]
test edx, edx
jle 0x4a6889
lea esi, [esi]
nop
lock add dword [0x8f075c], 1
sub eax, 1
jae 0x4a8640
jmp 0x4a6889
mov dword [esp + 8], 0xe97
mov dword [esp + 4], str..._dlls_kernel32_tests_loader.c
mov dword [esp], str.file_align___sizeof_filler_
call dword [sym.imp.msvcrt.dll__assert]
nop