Function at 0x10001a78
Capabilities:
Delete file
Read file on windows
Write file on windows

Disassembly:
jmp 0x100c1989
push ebp
lea ebp, [esp - 0x3b8]
sub esp, 0x438
mov eax, dword [0x10184508]
xor eax, ebp
mov dword [ebp + 0x3b4], eax
mov eax, dword [ebp + 0x3c4]
and dword [ebp - 0x80], 0
push ebx
push esi
push edi
mov edi, dword [ebp + 0x3c0]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp + 0x3cc]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 0x3d0]
mov esi, dword [edi + 8]
push 0x1018a770
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x64], esi
call sym.CoreFoundation.dll___CFSpinLock
mov eax, dword [0x1018a774]
xor ebx, ebx
mov dword [ebp - 0x78], ebx
pop ecx
test eax, eax
je 0x100c19fc
push esi
push eax
call sym.CoreFoundation.dll_CFDictionaryGetValue
pop ecx
pop ecx
mov ebx, eax
mov dword [ebp - 0x78], eax
push 0x1018a770
call sym.CoreFoundation.dll___CFSpinUnlock
mov eax, dword [ebp - 0x68]
and eax, 1
mov dword [ebp - 0x70], eax
pop ecx
test ebx, ebx
jne 0x100c1a9b
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push ebx
push ebx
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
cmp dword [ebp - 0x70], ebx
mov ecx, str.receive
mov eax, str.send
cmove eax, ecx
push eax
push str.In_the_middle_of_windows_msg_to__s_a_message__I_had_an_invalid_pipe_n
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push ebx
push ebx
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 4
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
add esp, 0x18
mov eax, 0x10000004
jmp 0x100c231f
push 0x600
push 0x400
lea eax, [ebp - 0x4c]
push eax
push dword [ebx + 0x10]
call sym.CoreFoundation.dll_CFStringGetCString
add esp, 0x10
cmp dword [ebp - 0x70], 0
je 0x100c233d
cmp dword [0x1018a780], 0
je 0x100c1b41
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
lea eax, [ebp - 0x4c]
push eax
push esi
mov esi, dword [ebp - 0x60]
push dword [esi + 4]
push str.windows_msg_sending__d_bytes_to_pipe__x__named__s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov edi, dword [ebp - 0x60]
add esp, 0x18
xor esi, esi
cmp dword [edi], esi
jge 0x100c1d17
lea esi, [edi + 0x28]
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
push eax
push 0x1014c308
push 0x10
push esi
call fcn.10002a4f
add esp, 0x10
cmp dword [0x1018a780], 0
je 0x100c1bde
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
push esi
push str.Creating_a_OOL_file_with_name__s
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov edi, dword [ebp - 0x60]
add esp, 0x18
call fcn.100c0ce5
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
pop ecx
lea esi, [eax + 0x11]
mov eax, esi
call fcn.10003341
lea eax, [edi + 0x28]
mov dword [ebp - 0x78], esp
push eax
call fcn.100c0ce5
push eax
push str._s_s
push esi
mov esi, dword [ebp - 0x78]
push esi
call fcn.10002a4f
add esp, 0x14
push 0
push 0x100
push 2
push 0
push 5
push 0x40000000
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x78], eax
cmp eax, 0xffffffff
jne 0x100c1cb1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
push ebx
push esi
push str.windows_msg___Error_creating_out_of_line_file_at__s:__d_n
mov edi, eax
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 4
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
add esp, 0x18
mov eax, ebx
jmp 0x100c231f
and dword [ebp - 0x50], 0
lea ecx, [ebp - 0x50]
push 0
push ecx
push dword [edi + 0x1c]
push dword [edi + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x100c1d0c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
push ebx
push esi
push str.windows_msg___Error_writing_to_out_of_line_file_at__s:__d_n
jmp 0x100c1c6f
push dword [ebp - 0x78]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor esi, esi
cmp dword [0x1018a780], 0
je 0x100c1d92
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x64]
push str.windows_msg_pipe__x_about_to_get_write_lock_for_write__pipe_name__s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov edi, dword [ebp - 0x60]
add esp, 0x18
lea eax, [ebx + 0x54]
push eax
mov dword [ebp - 0x58], eax
call sym.CoreFoundation.dll___CFSpinLock
mov esi, dword [ebp - 0x64]
lea eax, [ebx + 0x1c]
pop ecx
push eax
mov dword [ebp - 0x78], eax
lea eax, [ebp - 0x50]
push eax
push dword [edi + 4]
push edi
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x100c2313
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x70], eax
cmp eax, 0xe8
jne 0x100c1e8f
push 0xa
pop ebx
mov eax, ebx
dec ebx
test eax, eax
jle 0x100c2313
cmp dword [0x1018a780], 0
je 0x100c1e57
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
push str.This_is_CFWindowsNamedPipe_attempting_to_resend_data_on_the_first_write_to_a_pipe
mov edi, eax
call sym.CoreFoundation.dll___CFStringMakeConstantString
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x28
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov edi, dword [ebp - 0x60]
add esp, 0x18
mov esi, dword [ebp - 0x64]
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [ebp - 0x78]
lea eax, [ebp - 0x50]
push eax
push dword [edi + 4]
push edi
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x100c2313
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
jne 0x100c1dd7
jmp 0x100c2313
cmp eax, 0x3e5
jne 0x100c22a2
test byte [ebp - 0x68], 0x10
jne 0x100c1f68
cmp dword [0x1018a780], 0
je 0x100c1f21
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
lea eax, [ebp - 0x4c]
push eax
push esi
push str.windows_msg_pipe__x_about_to_GetOverlappedResult_for_write__pipe_name__s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov esi, dword [ebp - 0x64]
add esp, 0x18
push 1
lea eax, [ebp - 0x50]
push eax
lea eax, [ebx + 0x1c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
cmp dword [0x1018a780], 0
je 0x100c229a
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
jmp 0x100c224d
cmp dword [0x1018a780], 0
je 0x100c1fe8
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
lea eax, [ebp - 0x4c]
push dword [ebp - 0x54]
push eax
push esi
push str.windows_msg_pipe__x_about_to_spin_over_GetOverlappedResult_for_write__pipe_name__s__for__d_milliseconds
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov esi, dword [ebp - 0x64]
add esp, 0x18
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
imul eax, dword [ebp - 0x54], 0x2710
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x78]
push 0
pop edi
add ecx, eax
mov dword [ebp - 0x74], ecx
adc edx, edi
mov dword [ebp - 0x70], edx
cmp dword [0x1018a780], 0
je 0x100c2089
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push edi
push edi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
lea eax, [ebp - 0x4c]
push eax
push esi
push str.windows_msg_pipe__x_once_through_the_loop__trying_to_GetOverlappedResult_for_write__pipe_name__s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov esi, dword [ebp - 0x64]
add esp, 0x18
xor edi, edi
push edi
lea eax, [ebp - 0x50]
push eax
lea eax, [ebx + 0x1c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
test eax, eax
jne 0x100c2222
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x54], eax
cmp eax, 0x3e4
jne 0x100c2161
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x6c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
jg 0x100c200c
cmp dword [0x1018a780], 0
je 0x100c2155
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor ebx, ebx
push ebx
push ebx
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
lea eax, [ebp - 0x4c]
push eax
push esi
push str.windows_msg_pipe__x_Timed_Out_trying_to_GetOverlappedResult_for_write__pipe_name__s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push ebx
push ebx
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
add esp, 0x18
mov dword [ebp - 0x80], 0x10000004
jmp 0x100c2313
cmp dword [0x1018a780], 0
je 0x100c21dd
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push edi
push edi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
mov ebx, dword [ebp - 0x54]
add esp, 0x18
mov edi, eax
push ebx
push esi
push str.windows_msg_pipe__x_Error_getting_overlapped_result_for_named_pipe:__d_n
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
add esp, 0x18
xor edi, edi
jmp 0x100c21e0
mov ebx, dword [ebp - 0x54]
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push edi
push edi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
push ebx
push str.windows_msg___Error_getting_overlapped_result_for_named_pipe:__d_n
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
jmp 0x100c22e2
cmp dword [0x1018a780], 0
je 0x100c229a
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push edi
push edi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
lea eax, [ebp - 0x4c]
push eax
push esi
push str.windows_msg_pipe__x_Got_GetOverlappedResult_for_write__pipe_name__s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
add esp, 0x18
mov eax, dword [ebp - 0x50]
add dword [ebx + 0x24], eax
jmp 0x100c2313
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
mov ebx, dword [ebp - 0x70]
add esp, 0x18
mov edi, eax
push ebx
push str.windows_msg___Error_writing_to_named_pipe:__d_n
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 4
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov dword [ebp - 0x80], ebx
add esp, 0x18
push dword [ebp - 0x58]
call sym.CoreFoundation.dll___CFSpinUnlock
pop ecx
mov eax, dword [ebp - 0x80]
lea esp, [ebp - 0x8c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x3b4]
xor ecx, ebp
call fcn.1000234c
add ebp, 0x3b8
leave
ret
mov al, byte [ebx + 4]
and dword [ebp - 0x50], 0
test al, 0x20
je 0x100c2744
lea eax, [ebx + 0x50]
push eax
call sym.CoreFoundation.dll___CFSpinLock
test byte [ebx + 4], 0x10
pop ecx
je 0x100c2363
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
jmp 0x100c2365
xor eax, eax
push eax
push dword [ebx + 0x18]
mov dword [ebp - 0x54], eax
call sym.CoreFoundation.dll_CFDictionaryGetValue
mov dword [ebp - 0x68], eax
pop ecx
pop ecx
test eax, eax
jne 0x100c2435
push 0x14
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
mov dword [ebp - 0x68], eax
xor eax, eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov ecx, dword [ebp - 0x68]
push ecx
push dword [ebp - 0x54]
and dword [ecx + 8], 0
and dword [ecx + 0xc], 0
mov dword [ecx + 0x10], eax
push dword [ebx + 0x18]
call sym.CoreFoundation.dll_CFDictionarySetValue
add esp, 0xc
cmp dword [0x1018a780], 0
je 0x100c2432
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
mov edi, eax
add esp, 0x18
mov eax, dword [ebp - 0x68]
push dword [eax + 0x10]
push str.Created_read_handle__x
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov edi, dword [ebp - 0x60]
add esp, 0x18
mov esi, dword [ebp - 0x64]
mov eax, dword [ebp - 0x68]
push 0
lea ecx, [ebp - 0x50]
push ecx
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
test eax, eax
jne 0x100c2470
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e4
jne 0x100c2469
push 1
lea eax, [ebp - 0x50]
push eax
mov eax, dword [ebp - 0x68]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
test eax, eax
jne 0x100c2470
xor ecx, ecx
mov dword [ebp - 0x50], ecx
jmp 0x100c2473
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x68]
add dword [eax + 8], ecx
push dword [ebp - 0x50]
push dword [ebx + 0x14]
push edi
call sub.VCRUNTIME140.dll_memmove
lea eax, [ebx + 0x50]
push eax
call sym.CoreFoundation.dll___CFSpinUnlock
mov ecx, dword [ebp - 0x58]
add esp, 0x10
test ecx, ecx
je 0x100c249d
mov eax, dword [ebp - 0x50]
mov dword [ecx], eax
cmp dword [0x1018a780], 0
je 0x100c2519
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
push esi
push dword [ebp - 0x50]
push str.windows_msg_received__d_bytes_from_pipe__x
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x14
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov edi, dword [ebp - 0x60]
add esp, 0x18
cmp dword [edi], 0
jge 0x100c2822
mov byte [ebp - 0x59], 0
call fcn.100c0ce5
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
pop ecx
lea esi, [eax + 0x11]
mov eax, esi
call fcn.10003341
lea eax, [edi + 0x28]
mov dword [ebp - 0x70], esp
push eax
call fcn.100c0ce5
push eax
push str._s_s
push esi
mov esi, dword [ebp - 0x70]
push esi
call fcn.10002a4f
add esp, 0x14
and dword [ebp - 0x68], 0
push 0
push 0
push 3
push 0
push 2
push closesocket
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
mov dword [ebp - 0x58], edi
cmp edi, 0xffffffff
jne 0x100c2634
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov dword [ebp - 0x54], esi
cmp esi, 0x20
jne 0x100c26bc
cmp dword [ebp - 0x68], 0x14
jae 0x100c26bc
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
mov edi, eax
add esp, 0x18
mov eax, dword [ebp - 0x68]
push dword [eax + 0x10179c04]
push str.windows_msg___Got_ERROR_SHARING_VIOLATION__sleeping_for__d_ms
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 4
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov esi, dword [ebp - 0x68]
add esp, 0x18
push dword [esi + 0x10179c04]
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [ebp - 0x58]
add esi, 4
mov al, byte [ebp - 0x59]
mov dword [ebp - 0x68], esi
mov esi, dword [ebp - 0x70]
jmp 0x100c2639
mov al, 1
mov byte [ebp - 0x59], al
test al, al
je 0x100c255f
mov esi, dword [ebp - 0x60]
push dword [esi + 0x1c]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
push 0
lea ecx, [ebp - 0x50]
mov dword [esi + 0x18], eax
push ecx
push dword [esi + 0x1c]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x100c272f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
push ebx
push str.windows_msg___Error_reading_from_named_pipe:__d_n
mov edi, eax
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
jmp 0x100c1c84
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor ebx, ebx
push ebx
push ebx
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
push esi
push str.windows_msg___Error_creating_pipe:__d_n
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push ebx
push ebx
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 4
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov eax, dword [ebp - 0x54]
add esp, 0x18
jmp 0x100c231f
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
jmp 0x100c2822
test al, 0x10
je 0x100c2751
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
mov edi, eax
jmp 0x100c2753
xor edi, edi
push edi
push dword [ebx + 0x18]
call sym.CoreFoundation.dll_CFDictionaryGetValue
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x100c2815
push 0x14
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
mov esi, eax
xor eax, eax
push eax
push eax
push eax
push eax
mov dword [ebp - 0x58], esi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
and dword [esi + 8], 0
and dword [esi + 0xc], 0
push esi
mov dword [esi + 0x10], eax
push edi
push dword [ebx + 0x18]
call sym.CoreFoundation.dll_CFDictionarySetValue
add esp, 0xc
cmp dword [0x1018a780], 0
je 0x100c2815
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
push dword [esi + 0x10]
push str.Created_read_handle__x
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov esi, dword [ebp - 0x58]
add esp, 0x18
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
or dword [ebp - 0x80], 0xffffffff
mov al, byte [ebx + 4]
test al, 0x10
je 0x100c2a44
test al, 0x20
jne 0x100c2a44
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0x60], eax
test eax, eax
je 0x100c2a44
push 0
lea eax, [ebx + 0x3c]
push eax
push dword [ebx + 0x38]
push dword [ebx + 0x10]
push dword [sym.CoreFoundation.dll_kCFAllocatorSystemDefault]
call sym.CoreFoundation.dll_CFWindowsNamedPipeCreateWithName
push dword [ebx + 0x34]
mov edi, eax
push edi
mov dword [ebp - 0x70], edi
call sym.CoreFoundation.dll_CFWindowsNamedPipeSetInvalidationCallBack
push 0
push edi
push dword [sym.CoreFoundation.dll_kCFAllocatorSystemDefault]
call sym.CoreFoundation.dll_CFWindowsNamedPipeCreateRunLoopSource
mov dword [ebp - 0x54], eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
mov dword [ebp - 0x58], eax
call sym.CoreFoundation.dll_CFRunLoopCopyAllModes
push eax
mov dword [ebp - 0x68], eax
xor esi, esi
call sym.CoreFoundation.dll_CFArrayGetCount
add esp, 0x30
test eax, eax
jle 0x100c28e3
mov edi, dword [ebp - 0x58]
mov ebx, dword [ebp - 0x68]
push esi
push ebx
call sym.CoreFoundation.dll_CFArrayGetValueAtIndex
push eax
push dword [ebp - 0x60]
mov dword [ebp - 0x58], eax
push edi
call sym.CoreFoundation.dll_CFRunLoopContainsSource
add esp, 0x14
test al, al
je 0x100c28d1
push dword [ebp - 0x58]
push dword [ebp - 0x54]
push edi
call sym.CoreFoundation.dll_CFRunLoopAddSource
push dword [ebp - 0x54]
call sym.CoreFoundation.dll_CFRelease
add esp, 0x10
push ebx
inc esi
call sym.CoreFoundation.dll_CFArrayGetCount
pop ecx
cmp esi, eax
jl 0x100c289f
mov ebx, dword [ebp - 0x78]
mov edi, dword [ebp - 0x70]
cmp dword [0x1018a780], 0
je 0x100c2a44
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
mov esi, str._p__d___s_
push esi
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov dword [ebp - 0x58], eax
test byte [edi + 4], 0x10
je 0x100c292d
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
jmp 0x100c292f
xor eax, eax
push eax
push dword [edi + 0x18]
mov dword [ebp - 0x78], eax
call sym.CoreFoundation.dll_CFDictionaryGetValue
mov edi, eax
pop ecx
pop ecx
test edi, edi
jne 0x100c29f6
push 0x14
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
mov edi, eax
xor eax, eax
push eax
push eax
push eax
push eax
mov dword [ebp - 0x54], edi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
and dword [edi + 8], 0
and dword [edi + 0xc], 0
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x70]
push edi
push dword [ebp - 0x78]
push dword [eax + 0x18]
call sym.CoreFoundation.dll_CFDictionarySetValue
add esp, 0xc
cmp dword [0x1018a780], 0
je 0x100c29f6
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push esi
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
mov edi, eax
add esp, 0x18
mov eax, dword [ebp - 0x54]
push dword [eax + 0x10]
push str.Created_read_handle__x
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov edi, dword [ebp - 0x54]
add esp, 0x18
mov eax, dword [ebp - 0x70]
push dword [eax + 0x10]
push dword [edi + 0x10]
push dword [eax + 0xc]
push eax
push str.cloned_a_new_pipe__x_with_handle__x_with_read_event__x__to_serve_name___
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
mov edi, dword [ebp - 0x58]
add esp, 0x1c
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
add esp, 0x18
or byte [ebx + 4], 0x20
cmp dword [0x1018a780], 0
mov al, byte [ebx + 4]
je 0x100c2ac4
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
push dword [ebp - 0x64]
push str.Scheduling_a_read_for_pipe_with_handle__x
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov al, byte [ebx + 4]
add esp, 0x18
test al, 0x10
je 0x100c2ad1
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
mov edi, eax
jmp 0x100c2ad3
xor edi, edi
push edi
push dword [ebx + 0x18]
call sym.CoreFoundation.dll_CFDictionaryGetValue
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x100c2b95
push 0x14
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
mov esi, eax
xor eax, eax
push eax
push eax
push eax
push eax
mov dword [ebp - 0x58], esi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
and dword [esi + 8], 0
and dword [esi + 0xc], 0
push esi
mov dword [esi + 0x10], eax
push edi
push dword [ebx + 0x18]
call sym.CoreFoundation.dll_CFDictionarySetValue
add esp, 0xc
cmp dword [0x1018a780], 0
je 0x100c2b95
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
mov edi, eax
push dword [esi + 0x10]
push str.Created_read_handle__x
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 0
push 0
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x10
mov esi, eax
push esi
push edi
push 0x1014c48c
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
push 7
call sym.CoreFoundation.dll_CFLog
push edi
call sym.CoreFoundation.dll_CFRelease
push esi
call sym.CoreFoundation.dll_CFRelease
mov esi, dword [ebp - 0x58]
add esp, 0x18
push esi
lea eax, [ebp - 0x50]
push eax
push 0xa000
push dword [ebx + 0x14]
push dword [ebp - 0x64]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x100c231c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
cmp ebx, 0x3e5
je 0x100c231c
cmp ebx, 0x6d
je 0x100c1caa
call sym.CoreFoundation.dll__CFGetProgname
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call sym.CoreFoundation.dll_CFRunLoopGetCurrent
push eax
push str._p__d___s_
call sym.CoreFoundation.dll___CFStringMakeConstantString
pop ecx
push eax
xor esi, esi
push esi
push esi
call sym.CoreFoundation.dll_CFStringCreateWithFormat
add esp, 0x18
push ebx
push str.Unable_to_read_from_named_pipe__error___d_n
jmp 0x100c26a4