Function at 0x1400b1c3c
Capabilities:
Check for time delay via gettickcount
Check mutex on windows
Connect pipe
Create mailslot
Create pipe
Read file via mapping

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2a8
mov r14, rcx
lea rcx, [rax + 0x20]
call fcn.140055dfc
lea rcx, [rsp + 0x308]
call fcn.140055dec
xor esi, esi
cmp eax, esi
jne 0x1400b1c85
lea eax, [rsi + 1]
jmp 0x1400b380e
lea rcx, [rsp + 0x308]
call fcn.1400560d0
lea rcx, [rsp + 0xc0]
call fcn.14005bf04
lea rcx, [rsp + 0x128]
call fcn.14005bf04
lea rcx, [rsp + 0x138]
call fcn.14005bf04
lea rcx, [rsp + 0x140]
call fcn.14005bf04
mov r12d, 2
lea rcx, [rsp + 0x2f8]
lea r15d, [r12 - 1]
mov rbx, rsi
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x98], 6
mov byte [rsp + 0x308], sil
mov byte [rsp + 0x68], sil
mov r13d, r15d
mov dword [rsp + 0xa0], r15d
mov dword [rsp + 0x60], r15d
call fcn.140054140
mov rdi, qword [rsp + 0x2f8]
lea edx, [r12 + 0x2b]
mov bpl, sil
mov byte [rsp + 0x40], sil
mov dword [rsp + 0x70], 3
lea eax, [rdx - 3]
lea r8d, [r12 + 2]
cmp dx, word [rdi]
jne 0x1400b1ff8
lea r11d, [r12 + 7]
lea r14d, [r12 + 0x21]
cmp dx, word [rdi + 2]
jne 0x1400b1fe2
lea rcx, str.__gethostbyname
mov r8d, 0xf
mov rdx, rdi
call fcn.140055654
cmp al, sil
je 0x1400b1df8
add rdi, 0x1e
mov qword [rsp + 0x2f8], rdi
movzx eax, word [rdi]
cmp ax, si
je 0x1400b1d9a
cmp r11w, ax
ja 0x1400b1d8e
cmp ax, 0xd
jbe 0x1400b1d9a
mov edx, 0x20
cmp dx, ax
jne 0x1400b1da2
jmp 0x1400b1d9f
mov edx, 0x20
mov bpl, r15b
cmp ax, si
je 0x1400b1fbf
mov ecx, 0x2a
lea r13d, [rcx - 0x26]
cmp r11w, ax
ja 0x1400b1dc0
cmp ax, 0xd
jbe 0x1400b1deb
cmp dx, ax
je 0x1400b1deb
cmp cx, ax
jne 0x1400b1dcf
or bpl, r12b
jmp 0x1400b1dd8
cmp r14w, ax
jne 0x1400b1dd8
or bpl, r13b
add rdi, r12
mov qword [rsp + 0x2f8], rdi
mov ax, word [rdi]
cmp ax, si
jne 0x1400b1db4
mov r13d, dword [rsp + 0xa0]
jmp 0x1400b1fbf
or rdi, 0xffffffffffffffff
lea rdx, [rsp + 0x2f8]
lea rcx, str.__file
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1e2b
mov r13d, edi
mov dword [rsp + 0xa0], edi
mov dword [rsp + 0x60], edi
jmp 0x1400b1f79
lea rdx, [rsp + 0x2f8]
lea rcx, str.__shm
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1e52
mov r13d, 0xfffffffe
jmp 0x1400b1f23
lea rdx, [rsp + 0x2f8]
lea rcx, str.__event
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1e79
mov r13d, 0xfffffffc
jmp 0x1400b1f23
lea rdx, [rsp + 0x2f8]
lea rcx, str.__semaphore
mov r8d, edi
call fcn.14005e70c
cmp al, sil
jne 0x1400b1eb1
lea rdx, [rsp + 0x2f8]
lea rcx, str.__sem
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1eb9
mov r13d, 0xffffffe0
jmp 0x1400b1f23
lea rdx, [rsp + 0x2f8]
lea rcx, str.__mutex
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1edd
mov r13d, 0xffffffc0
jmp 0x1400b1f23
lea rdx, [rsp + 0x2f8]
lea rcx, str.__mailslot
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1f01
mov r13d, 0xfffffff8
jmp 0x1400b1f23
lea rdx, [rsp + 0x2f8]
lea rcx, str.__pipe
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1f32
mov r13d, 0xfffffff0
mov dword [rsp + 0xa0], r13d
mov dword [rsp + 0x60], r13d
jmp 0x1400b1f79
lea rdx, [rsp + 0x2f8]
lea rcx, str.__exist
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1f58
mov byte [rsp + 0x308], r15b
jmp 0x1400b1f79
lea rdx, [rsp + 0x2f8]
lea rcx, str.__only
mov r8d, edi
call fcn.14005e70c
cmp al, sil
je 0x1400b1f81
mov byte [rsp + 0x68], r15b
mov r11d, 9
jmp 0x1400b1fcc
mov rcx, qword [rsp + 0x2f8]
mov r11d, 9
movzx eax, word [rcx]
cmp ax, si
je 0x1400b1fbf
lea edx, [r11 + 0x17]
cmp r11w, ax
ja 0x1400b1fa7
cmp ax, 0xd
jbe 0x1400b1fbf
cmp dx, ax
je 0x1400b1fbf
add rcx, r12
mov qword [rsp + 0x2f8], rcx
mov ax, word [rcx]
cmp ax, si
jne 0x1400b1f9b
lea rcx, [rsp + 0x2f8]
call fcn.140054140
mov rdi, qword [rsp + 0x2f8]
mov edx, 0x2d
cmp dx, word [rdi]
je 0x1400b1d46
mov r14, qword [rsp + 0x2f0]
mov eax, 0x2a
mov byte [rsp + 0x40], bpl
lea r8d, [rax - 0x26]
mov byte [rsp + 0x78], sil
cmp ax, word [rdi]
jne 0x1400b2027
add rdi, r12
lea rcx, [rsp + 0x2f8]
mov byte [rsp + 0x78], r15b
mov qword [rsp + 0x2f8], rdi
call fcn.140054140
mov rdi, qword [rsp + 0x2f8]
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0xc8], r14
or r14, 0xffffffffffffffff
mov qword [rsp + 0xe0], rax
lea eax, [r14 + 0x3b]
mov byte [rsp + 0x50], sil
mov qword [rsp + 0x58], rsi
mov dword [rsp + 0x88], r14d
mov dword [rsp + 0x90], 0x100000
mov dword [rsp + 0x80], 0x80000001
cmp ax, word [rdi]
jne 0x1400b20a8
cmp ax, word [rdi + 2]
jne 0x1400b20a8
lea rax, [0x14011afa0]
add rdi, r8
mov byte [rsp + 0x50], r15b
mov qword [rsp + 0xc8], rax
mov rax, qword [0x14011afe0]
mov qword [rsp + 0x2f8], rdi
mov qword [rsp + 0xe0], rax
mov rdi, qword [rsp + 0x2f0]
mov eax, 0x3b
lea r8, [rsp + 0xc0]
lea rdx, [rsp + 0x2f8]
lea r9d, [rax - 0xf]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov dl, sil
mov byte [rsp + 0x51], dl
mov r10d, 0xffdf
mov r11d, 0x57
cmp r13d, 0xfffffffe
jne 0x1400b2145
mov rcx, qword [rsp + 0x2f8]
movzx eax, word [rcx]
and ax, r10w
cmp r11w, ax
jne 0x1400b2114
add rcx, r12
mov byte [rsp + 0x51], r15b
mov qword [rsp + 0x2f8], rcx
movzx eax, word [rcx]
cmp ax, si
je 0x1400b215f
mov edx, 0x3b
lea r8d, [rdx - 0xf]
add rcx, r12
mov qword [rsp + 0x2f8], rcx
cmp r8w, ax
je 0x1400b215f
cmp dx, ax
je 0x1400b215f
mov ax, word [rcx]
cmp ax, si
jne 0x1400b2125
jmp 0x1400b215f
cmp r13d, 0xfffffffc
je 0x1400b2157
cmp r13d, 0xffffffe0
je 0x1400b2157
cmp r13d, 0xffffffc0
jne 0x1400b21b9
mov rcx, qword [rsp + 0x2f8]
mov eax, 0x2e
cmp ax, word [rcx]
jne 0x1400b217d
add rcx, r12
lea rdx, str.Local_
mov qword [rsp + 0x2f8], rcx
jmp 0x1400b2199
mov eax, 0x23
cmp ax, word [rcx]
jne 0x1400b2192
add rcx, r12
mov qword [rsp + 0x2f8], rcx
lea rdx, [0x140108820]
lea rcx, [rsp + 0x58]
mov r9, r14
mov r8, r14
call fcn.14005c0c0
mov dl, byte [rsp + 0x51]
mov r11d, 0x57
mov r10d, 0xffdf
cmp bpl, sil
je 0x1400b246a
lea rcx, [rsp + 0xb8]
call fcn.14005bf04
mov eax, 0x3b
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0x2f8]
lea r9d, [rax - 0xf]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0xb8]
mov eax, 4
lea rcx, [rsp + 0xb0]
mov r14d, esi
movzx ebx, ax
mov word [rsp + 0x68], ax
or rax, 0xffffffffffffffff
mov r9, rax
mov r8, rax
mov qword [rsp + 0xb0], rsi
call fcn.14005be40
lea rcx, [rsp + 0x48]
call fcn.14005bf04
mov rdi, qword [rsp + 0xb0]
mov dword [rsp + 0x98], esi
lea r13, [rsp + 0x98]
mov byte [rsp + 0x308], r15b
mov rbp, rsi
cmp rdi, rsi
je 0x1400b22b4
cmp byte [rdi], sil
je 0x1400b227e
mov rcx, rdi
call qword [0x14011b3a8]
mov dword [rsp + 0x98], eax
cmp eax, 0xffffffff
jne 0x1400b22b4
mov dword [rsp + 0x98], esi
mov rcx, rdi
call qword [0x14011b3b0]
cmp rax, rsi
je 0x1400b22b4
mov rbp, qword [rax + 0x18]
mov bx, word [rax + 0x12]
mov word [rsp + 0x68], bx
cmp qword [rbp], rsi
je 0x1400b22b4
mov al, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov byte [rsp + 0x308], al
jmp 0x1400b241c
mov eax, 4
test byte [rsp + 0x40], al
je 0x1400b2370
lea eax, [r14 + 0x3e]
lea rcx, [rsp + 0x48]
movsxd rdx, eax
call fcn.14005c004
mov rdi, qword [rsp + 0x48]
xor eax, eax
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x100], rax
movsx eax, bx
mov ecx, 0x20
movsxd r11, r14d
cmp eax, ecx
lea r15, [rdi + r11*2]
mov rdx, r13
cmova eax, ecx
lea rcx, [rsp + 0xe8]
mov qword [rsp + 0x2f8], r15
movsxd r8, eax
mov qword [rsp + 0xe8], rsi
call fcn.14001b870
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x2f8]
lea r8, str.0x_08I64X
call fcn.1400cb458
mov rcx, qword [rsp + 0x2f8]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
movsxd rcx, eax
mov rax, qword [rsp + 0x2f8]
lea rdx, [rax + rcx*2]
mov qword [rsp + 0x2f8], rdx
jmp 0x1400b23f8
movsx ebx, bx
lea eax, [rbx + rbx*2]
lea ecx, [r14 + rax*2]
movsxd rdx, ecx
lea rcx, [rsp + 0x48]
call fcn.14005c004
mov rdi, qword [rsp + 0x48]
movsxd r11, r14d
lea rax, [rdi + r11*2]
dec ebx
cmp ebx, esi
lea rdx, [rax + 2]
mov qword [rsp + 0x2f8], rax
mov r15, rax
jl 0x1400b23ed
movzx r8d, byte [r13]
lea rdx, [0x140109118]
mov rcx, rax
call qword [sym.imp.USER32.dll_wsprintfW]
mov rcx, qword [rsp + 0x2f8]
inc r13
call qword [sym.imp.KERNEL32.dll_lstrlenW]
sub ebx, 1
movsxd rcx, eax
mov rax, qword [rsp + 0x2f8]
lea rax, [rax + rcx*2]
mov qword [rsp + 0x2f8], rax
mov rdx, rax
jns 0x1400b23a8
mov bx, word [rsp + 0x68]
sub rdx, r12
mov word [rdx], si
test byte [rsp + 0x308], r12b
je 0x1400b242e
cmp qword [rbp], rsi
je 0x1400b242e
mov eax, 0x20
mov word [rdx], ax
sub rdx, r15
add rdx, r12
sar rdx, 1
add r14d, edx
mov r13, qword [rbp]
cmp r13, rsi
je 0x1400b242e
add rbp, 8
jmp 0x1400b22b4
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x2f0]
mov r8, rdi
call fcn.14005b584
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0xb0]
call fcn.140054110
lea rcx, [rsp + 0xb8]
jmp 0x1400b26e2
or r14, 0xffffffffffffffff
mov qword [rsp + 0xd8], rsi
cmp r13d, r14d
jne 0x1400b2756
mov rcx, qword [rsp + 0x2f8]
mov ebp, 0x80000000
mov r14d, 7
movzx eax, word [rcx]
mov edx, esi
and ax, r10w
cmp r11w, ax
jne 0x1400b24b9
add rcx, r12
mov ebp, 0xc0000000
mov dword [rsp + 0x70], 4
mov qword [rsp + 0x2f8], rcx
movzx eax, word [rcx]
mov r8d, 0x45
and ax, r10w
cmp r8w, ax
jne 0x1400b24df
add rcx, r12
mov dword [rsp + 0x70], 3
mov qword [rsp + 0x2f8], rcx
mov eax, 0x2d
cmp ax, word [rcx]
jne 0x1400b24fa
add rcx, r12
mov r14d, esi
mov edx, r15d
mov qword [rsp + 0x2f8], rcx
movzx eax, word [rcx]
movsxd rdx, edx
cmp ax, si
je 0x1400b2574
mov r9d, 0x3b
lea r8d, [r9 - 0xf]
lea r13d, [r9 - 0x37]
add rcx, r12
mov qword [rsp + 0x2f8], rcx
cmp r8w, ax
je 0x1400b256c
cmp r9w, ax
je 0x1400b256c
and ax, r10w
cmp rdx, rsi
je 0x1400b2564
mov r8d, 0x52
cmp r8w, ax
jne 0x1400b2544
or r14d, r15d
jmp 0x1400b255e
cmp r11w, ax
jne 0x1400b254f
or r14d, r12d
jmp 0x1400b255e
mov r8d, 0x44
cmp r8w, ax
jne 0x1400b255e
or r14d, r13d
mov r8d, 0x2c
mov ax, word [rcx]
cmp ax, si
jne 0x1400b2513
mov r13d, dword [rsp + 0xa0]
lea rcx, [rsp + 0x90]
call fcn.14005bf04
mov eax, 0x3b
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x2f8]
lea r9d, [rax - 0xf]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rcx, qword [rsp + 0x90]
call fcn.140019e00
mov rdi, rax
cmp word [rax], si
jne 0x1400b25e3
lea rcx, [rsp + 0x90]
call fcn.140054110
cmp byte [rsp + 0x308], sil
jne 0x1400b3576
mov rsi, 0xffffffff80070057
jmp 0x1400b37cd
cmp dword [rsp + 0x70], 3
jne 0x1400b267a
cmp r14d, esi
je 0x1400b267a
mov eax, 0x5c
cmp ax, word [rdi]
jne 0x1400b2656
cmp ax, word [rdi + 2]
jne 0x1400b2656
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], esi
lea rcx, [rsp + 0xa8]
xor r9d, r9d
mov r8d, ebp
mov rdx, rdi
mov dword [rsp + 0x28], 3
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0x20], rsi
call fcn.1400037a8
mov rcx, qword [rsp + 0xa8]
cmp rcx, rsi
je 0x1400b26b1
cmp rcx, 0xffffffffffffffff
je 0x1400b267a
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400b267a
mov rcx, rdi
call fcn.1400df368
movabs rcx, 0x100000010
and rax, rcx
movabs rcx, 0x100000000
cmp rax, rcx
jne 0x1400b26b1
mov ebx, dword [rsp + 0x70]
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], esi
lea rcx, [rsp + 0xa8]
mov r9d, r14d
mov r8d, ebp
mov rdx, rdi
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0x20], rsi
call fcn.1400037a8
mov rbx, rax
cmp byte [rsp + 0x308], sil
je 0x1400b26cd
lea rcx, [rsp + 0x90]
call fcn.140054110
jmp 0x1400b3563
cmp rbx, rsi
jne 0x1400b26ec
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x90]
mov esi, eax
call fcn.140054110
jmp 0x1400b37cd
lea rcx, [rsp + 0x90]
call fcn.140054110
mov r15, rsi
mov rbp, qword [rsp + 0xe0]
mov dil, byte [rsp + 0x50]
mov r14, qword [rsp + 0xc8]
cmp rbp, rsi
jne 0x1400b3711
mov al, dil
mov rcx, r14
neg al
sbb rdx, rdx
and rdx, qword [rsp + 0x2f0]
call fcn.14001938c
mov rbp, qword [r14 + 0x40]
cmp rbp, rsi
jne 0x1400b3711
cmp rbx, rsi
je 0x1400b25d7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400b25d7
cmp r13d, 0xfffffffe
jne 0x1400b2cbc
lea eax, [r13 + 6]
mov r15d, r12d
mov dword [rsp + 0x60], 0x80000000
mov dword [rsp + 0x80], esi
mov rdi, rsi
mov qword [rsp + 0xd0], rsi
mov r14d, eax
mov qword [rsp + 0xb8], rsi
mov r13, rsi
mov qword [rsp + 0x90], rsi
mov rbp, rsi
cmp dl, sil
je 0x1400b27b6
mov r14d, dword [rsp + 0x98]
mov r15d, eax
mov dword [rsp + 0x60], 0xc0000000
mov dword [rsp + 0x70], eax
lea rcx, [rsp + 0x48]
call fcn.14005bf04
lea rcx, [rsp + 0xb0]
call fcn.14005bf04
mov rbx, qword [rsp + 0x2f0]
mov eax, 0x3b
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x2f8]
lea r9d, [rax - 0xf]
mov rcx, rbx
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400b28a2
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x2f8]
call fcn.14006aa58
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400b2898
add rdx, r12
mov eax, 0x3b
lea r8, [rsp + 0xb0]
mov qword [rsp + 0x2f8], rdx
lea r9d, [rax - 0xf]
lea rdx, [rsp + 0x2f8]
mov rcx, rbx
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400b2898
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x2f8]
call fcn.14006aa58
mov rdx, qword [rsp + 0x2f8]
mov rbx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xd0]
jmp 0x1400b28a5
mov rbx, qword [rsp + 0xb8]
jmp 0x1400b28a5
mov rbx, rsi
mov rax, qword [rsp + 0x48]
cmp word [rax], si
je 0x1400b2ca0
cmp rbx, rsi
jl 0x1400b2ca0
cmp rdi, rsi
jl 0x1400b2ca0
cmp word [rdx], si
je 0x1400b2931
add rdx, r12
lea rcx, [rsp + 0x2f8]
mov qword [rsp + 0x2f8], rdx
lea rdx, [rsp + 0x90]
call fcn.140006f0c
mov rcx, qword [rsp + 0x2f8]
cmp eax, esi
mov dword [rsp + 0x80], eax
cmovg rbp, rbx
mov qword [rsp + 0xa8], rbp
cmp word [rcx], si
je 0x1400b2929
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x2f8]
call fcn.140006f0c
mov rbp, qword [rsp + 0xa8]
mov r13, qword [rsp + 0x90]
or qword [rsp + 0xb8], 0xffffffffffffffff
lea rdx, str.pecmd2012.shm.
lea rcx, [rsp + 0x58]
mov r12, rsi
call fcn.14005c040
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x58]
call fcn.14005c040
mov rdx, qword [rsp + 0xb0]
movzx edx, word [rdx]
movzx eax, dx
neg ax
sbb eax, eax
not eax
and eax, 8
neg dx
sbb ecx, ecx
mov dword [rsp + 0x88], eax
xor edx, edx
not ecx
and ecx, 4
add eax, ecx
mov dword [rsp + 0x90], ecx
mov ecx, r14d
cdqe
add rbx, rax
mov qword [rsp + 0x120], rax
lea rax, [rbx + rdi]
mov rdi, qword [rsp + 0x58]
mov qword [rsp + 0xa8], rbx
mov r8, rdi
mov qword [rsp + 0x130], rax
call qword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, esi
cmp byte [rsp + 0x308], sil
je 0x1400b29fb
lea rcx, [rsp + 0xb0]
call fcn.140054110
lea rcx, [rsp + 0x48]
call fcn.140054110
mov r15d, 1
jmp 0x1400b3563
cmp rbx, rsi
jne 0x1400b2b1e
mov rcx, qword [rsp + 0xb0]
cmp word [rcx], si
je 0x1400b2a7b
call fcn.140019e00
mov ecx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x60]
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], ecx
lea rcx, [rsp + 0x308]
mov r9d, 7
mov rdx, rax
mov qword [rsp + 0x308], rsi
mov qword [rsp + 0x20], rsi
call fcn.1400037a8
mov qword [rsp + 0xb8], rax
cmp rax, rsi
jne 0x1400b2a7b
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0xb0]
mov esi, eax
call fcn.140054110
lea rcx, [rsp + 0x48]
jmp 0x1400b26e2
xor edx, edx
lea rcx, [rsp + 0x1f9]
mov byte [rsp + 0x1f8], sil
lea r8d, [rdx + 0x27]
call fcn.1400dfee0
lea rax, [rsp + 0x1f8]
lea rcx, [rsp + 0x150]
mov qword [rsp + 0x150], rax
mov dword [rsp + 0x148], 0x18
mov dword [rsp + 0x158], esi
call fcn.1400573bc
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x28], rdi
mov rdi, qword [rsp + 0xb8]
mov r9, rax
lea rdx, [rsp + 0x148]
shr r9, 0x20
mov r8d, r15d
mov rcx, rdi
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, qword [rsp + 0xa8]
cmp rbp, rsi
mov r14d, 1
cmovle rbp, r8
cmp rbx, rsi
je 0x1400b2b62
jmp 0x1400b2b2e
mov rdi, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xd0]
and r15d, 4
mov qword [rsp + 0x20], r8
mov rax, rcx
or r15d, 8
mov r9d, ecx
sar rax, 0x20
shr r15d, 1
mov rcx, rbx
mov r8d, eax
mov edx, r15d
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov r12, rax
cmp rdi, 0xffffffffffffffff
je 0x1400b2b71
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp r12, rsi
jne 0x1400b2b97
cmp rbx, rsi
je 0x1400b2a5c
cmp rbx, 0xffffffffffffffff
je 0x1400b2a5c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400b2a5c
mov r15, qword [rsp + 0xa8]
mov eax, dword [rsp + 0x88]
sub r15, qword [rsp + 0x120]
cmp r14d, esi
je 0x1400b2bbb
cmp eax, esi
je 0x1400b2bbb
mov qword [r12], r15
cdqe
add r12, rax
cmp r14d, esi
je 0x1400b2c7c
movsxd rax, dword [rsp + 0x90]
cmp eax, esi
je 0x1400b2be3
lea rcx, [r15 + r12]
mov r8, rax
xor edx, edx
call fcn.1400dfee0
cmp r14d, esi
je 0x1400b2c7c
cmp dword [rsp + 0x80], esi
jle 0x1400b2c7c
cmp rbp, rsi
jle 0x1400b2c7c
cmp r12, rsi
je 0x1400b2c7c
movabs rcx, 0x100000000
cmp r13, rcx
jb 0x1400b2c2b
shr rbp, 3
sub rbp, 1
js 0x1400b2c7c
lea rcx, [rbp + 1]
mov rdi, r12
mov rax, r13
rep stosq qword [rdi], rax
jmp 0x1400b2c7c
cmp r13, 0x10000
jb 0x1400b2c4c
shr rbp, 2
sub rbp, 1
js 0x1400b2c7c
lea rcx, [rbp + 1]
mov eax, r13d
mov rdi, r12
rep stosd dword [rdi], eax
jmp 0x1400b2c7c
cmp r13, 0x100
jb 0x1400b2c6e
shr rbp, 1
sub rbp, 1
js 0x1400b2c7c
lea rcx, [rbp + 1]
movzx eax, r13w
mov rdi, r12
rep stosw word [rdi], ax
jmp 0x1400b2c7c
mov r8, rbp
mov edx, r13d
mov rcx, r12
call fcn.1400dfee0
lea rcx, [rsp + 0xb0]
call fcn.140054110
lea rcx, [rsp + 0x48]
call fcn.140054110
mov r13d, dword [rsp + 0xa0]
jmp 0x1400b26fc
lea rcx, [rsp + 0xb0]
call fcn.140054110
lea rcx, [rsp + 0x48]
call fcn.140054110
jmp 0x1400b25d7
cmp r13d, 0xfffffffc
jne 0x1400b2e80
lea rcx, [rsp + 0x60]
call fcn.14005bf04
lea rcx, [rsp + 0x48]
call fcn.14005bf04
lea eax, [r13 + 0x3f]
lea r9d, [r13 + 0x30]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x2f8]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0x60]
cmp word [rdx], si
jne 0x1400b2d17
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x60]
jmp 0x1400b2cb2
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x2f8]
mov dword [rsp + 0x70], esi
mov dword [rsp + 0x88], esi
mov dword [rsp + 0x80], esi
call fcn.140006ee8
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
lea rdx, str.pecmd2012.event.
lea rcx, [rsp + 0x58]
call fcn.14005c040
mov rdx, qword [rsp + 0x60]
lea rcx, [rsp + 0x58]
call fcn.14005c040
mov dil, byte [rsp + 0x308]
cmp dil, sil
jne 0x1400b2d98
cmp dword [rsp + 0x70], esi
jne 0x1400b2dd4
mov r8, qword [rsp + 0x58]
mov edx, dword [rsp + 0x80]
mov ecx, 0x100002
call qword [sym.imp.KERNEL32.dll_OpenEventW]
mov rbx, rax
cmp dil, sil
je 0x1400b2dcb
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x60]
jmp 0x1400b26c3
cmp rax, rsi
jne 0x1400b2e6c
xor edx, edx
lea rcx, [rsp + 0x1a9]
mov byte [rsp + 0x1a8], sil
lea r8d, [rdx + 0x27]
call fcn.1400dfee0
lea rax, [rsp + 0x1a8]
lea rcx, [rsp + 0x198]
mov qword [rsp + 0x198], rax
mov dword [rsp + 0x190], 0x18
mov dword [rsp + 0x1a0], esi
call fcn.1400573bc
cmp dword [rsp + 0x70], esi
mov r9, qword [rsp + 0x58]
mov r8d, esi
setne r8b
cmp dword [rsp + 0x88], esi
mov edx, esi
lea rcx, [rsp + 0x190]
setne dl
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rbx, rax
cmp rax, rsi
jne 0x1400b2e6c
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x48]
mov esi, eax
call fcn.140054110
lea rcx, [rsp + 0x60]
jmp 0x1400b26e2
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x60]
jmp 0x1400b26f4
cmp r13d, 0xffffffe0
jne 0x1400b3071
lea rcx, [rsp + 0x70]
call fcn.14005bf04
lea rcx, [rsp + 0x48]
call fcn.14005bf04
lea eax, [r13 + 0x5b]
lea r9d, [r13 + 0x4c]
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x2f8]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0x70]
cmp word [rdx], si
jne 0x1400b2ede
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x70]
jmp 0x1400b2cb2
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x2f8]
mov dword [rsp + 0x88], r15d
mov dword [rsp + 0x80], r15d
mov dword [rsp + 0x90], esi
call fcn.140006ee8
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
mov ebp, dword [rsp + 0x80]
mov edi, dword [rsp + 0x88]
cmp ebp, r15d
lea rdx, str.pecmd2012.semaphore.
lea rcx, [rsp + 0x58]
cmovl ebp, r15d
cmp edi, ebp
cmovg edi, ebp
call fcn.14005c040
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x58]
call fcn.14005c040
mov r8, qword [rsp + 0x58]
xor edx, edx
mov ecx, 0x100002
call qword [sym.imp.KERNEL32.dll_OpenSemaphoreW]
mov rbx, rax
cmp byte [rsp + 0x308], sil
je 0x1400b2fa1
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x70]
jmp 0x1400b26c3
cmp rax, rsi
jne 0x1400b305d
xor edx, edx
lea rcx, [rsp + 0x249]
mov byte [rsp + 0x248], sil
lea r8d, [rdx + 0x27]
call fcn.1400dfee0
lea rax, [rsp + 0x248]
lea rcx, [rsp + 0x180]
mov qword [rsp + 0x180], rax
mov dword [rsp + 0x178], 0x18
mov dword [rsp + 0x188], esi
call fcn.1400573bc
mov r9, qword [rsp + 0x58]
cmp edi, esi
cmovl edi, esi
mov edx, r15d
lea rcx, [rsp + 0x178]
cmp edi, esi
mov r8d, ebp
cmovg edx, edi
call qword [sym.imp.KERNEL32.dll_CreateSemaphoreW]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
mov qword [rsp + 0xd8], r14
cmp rbx, rsi
jne 0x1400b304c
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x70]
call fcn.140054110
mov rsi, r14
jmp 0x1400b37cd
cmp edi, r15d
jge 0x1400b305d
or edx, 0xffffffff
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x70]
jmp 0x1400b26f4
cmp r13d, 0xffffffc0
jne 0x1400b3210
lea rcx, [rsp + 0x88]
call fcn.14005bf04
lea rcx, [rsp + 0x48]
call fcn.14005bf04
lea eax, [r13 + 0x7b]
lea r9d, [r13 + 0x6c]
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0x2f8]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0x88]
cmp word [rdx], si
jne 0x1400b30db
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x88]
jmp 0x1400b2cb2
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
mov dword [rsp + 0x80], esi
call fcn.140006ee8
lea rdx, str.pecmd2012.mutex.
lea rcx, [rsp + 0x58]
call fcn.14005c040
mov rdx, qword [rsp + 0x88]
lea rcx, [rsp + 0x58]
call fcn.14005c040
mov r8, qword [rsp + 0x58]
xor edx, edx
mov ecx, 0x100002
call qword [sym.imp.KERNEL32.dll_OpenMutexW]
mov rbx, rax
cmp byte [rsp + 0x308], sil
je 0x1400b3150
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x88]
jmp 0x1400b26c3
cmp rax, rsi
jne 0x1400b31f9
xor edx, edx
lea rcx, [rsp + 0x1d1]
mov byte [rsp + 0x1d0], sil
lea r8d, [rdx + 0x27]
call fcn.1400dfee0
lea rax, [rsp + 0x1d0]
lea rcx, [rsp + 0x168]
mov qword [rsp + 0x168], rax
mov dword [rsp + 0x160], 0x18
mov dword [rsp + 0x170], esi
call fcn.1400573bc
mov ecx, dword [rsp + 0x80]
mov r8, qword [rsp + 0x58]
cmp ecx, esi
mov edx, esi
cmovl ecx, esi
cmp ecx, esi
lea rcx, [rsp + 0x160]
setg dl
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
mov qword [rsp + 0xd8], r14
cmp rbx, rsi
jne 0x1400b31f9
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x88]
jmp 0x1400b303f
lea rcx, [rsp + 0x48]
call fcn.140054110
lea rcx, [rsp + 0x88]
jmp 0x1400b26f4
cmp r13d, 0xfffffff8
jne 0x1400b341b
lea rcx, [rsp + 0x80]
call fcn.14005bf04
lea eax, [r13 + 0x43]
lea r9d, [r13 + 0x34]
lea r8, [rsp + 0x80]
lea rdx, [rsp + 0x2f8]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0x80]
cmp word [rdx], si
jne 0x1400b3266
lea rcx, [rsp + 0x80]
jmp 0x1400b2cb2
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x2f8]
mov dword [rsp + 0x60], esi
call fcn.140006ee8
mov eax, dword [rsp + 0x60]
lea rdx, [rsp + 0x70]
neg eax
sbb ecx, ecx
and ecx, r14d
mov dword [rsp + 0x70], ecx
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
lea rdx, str..mailslotpecmd2012.mailslot.
lea rcx, [rsp + 0x58]
mov r9, r14
mov r8, r14
call fcn.14005c0c0
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x58]
call fcn.14005c040
xor edx, edx
lea rcx, [rsp + 0x221]
lea r8d, [rdx + 0x27]
mov byte [rsp + 0x220], sil
call fcn.1400dfee0
lea rax, [rsp + 0x220]
lea rcx, [rsp + 0x110]
mov qword [rsp + 0x110], rax
mov dword [rsp + 0x108], 0x18
mov dword [rsp + 0x118], esi
call fcn.1400573bc
mov bpl, byte [rsp + 0x308]
cmp bpl, sil
jne 0x1400b3364
cmp dword [rsp + 0x60], esi
je 0x1400b3364
mov r8d, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
lea r9, [rsp + 0x108]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateMailslotW]
mov rbx, rax
cmp rax, r14
jne 0x1400b3348
mov rbx, rsi
cmp rbx, rsi
jne 0x1400b33fc
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x80]
jmp 0x1400b26e0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x30], rsi
lea r9, [rsp + 0x108]
mov r8d, r15d
mov edx, 0x40000000
mov dword [rsp + 0x28], 0x80
mov edi, eax
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp bpl, sil
jne 0x1400b3409
cmp rbx, r14
jne 0x1400b3348
cmp dword [rsp + 0x70], 0xffffffff
je 0x1400b33be
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, edi
cmp eax, dword [rsp + 0x70]
jae 0x1400b3345
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x30], rsi
lea r9, [rsp + 0x108]
mov r8d, r15d
mov edx, 0x40000000
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
jmp 0x1400b33a4
lea rcx, [rsp + 0x80]
jmp 0x1400b26f4
lea rcx, [rsp + 0x80]
call fcn.140054110
jmp 0x1400b355c
cmp r13d, 0xfffffff0
jne 0x1400b3669
lea rcx, [rsp + 0xa0]
call fcn.14005bf04
lea rcx, [rsp + 0xa8]
call fcn.14005bf04
lea eax, [r13 + 0x4b]
lea r9d, [r13 + 0x3c]
lea r8, [rsp + 0xa0]
lea rdx, [rsp + 0x2f8]
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.14004dbd4
mov rdx, qword [rsp + 0xa0]
cmp word [rdx], si
jne 0x1400b348b
lea rcx, [rsp + 0xa8]
call fcn.140054110
lea rcx, [rsp + 0xa0]
jmp 0x1400b2cb2
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
call fcn.140006ee8
lea rdx, str..pipepecmd2012.pipe.
lea rcx, [rsp + 0x58]
mov r9, r14
mov r8, r14
call fcn.14005c0c0
mov rdx, qword [rsp + 0xa0]
lea rcx, [rsp + 0x58]
call fcn.14005c040
mov edi, dword [rsp + 0x80]
mov rbx, r14
mov r14b, byte [rsp + 0x308]
lea rcx, [rsp + 0xa8]
cmp r14b, sil
cmovne edi, esi
call fcn.140054110
lea rcx, [rsp + 0xa0]
call fcn.140054110
mov ebp, dword [rsp + 0x88]
mov eax, 4
test al, dil
jne 0x1400b3589
mov rcx, qword [rsp + 0x58]
mov eax, edi
mov r8d, esi
and eax, 3
mov edx, ebp
cmp al, 3
sete r8b
call fcn.1400573ec
mov rbx, rax
cmp r14b, sil
je 0x1400b3589
or r14, 0xffffffffffffffff
cmp rbx, r14
cmove rbx, rsi
cmp rbx, rsi
je 0x1400b3576
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400b37cd
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, esi
cmove eax, r15d
mov esi, eax
jmp 0x1400b37cd
xor edx, edx
lea rcx, [rsp + 0x271]
mov byte [rsp + 0x270], sil
lea r8d, [rdx + 0x27]
call fcn.1400dfee0
lea rax, [rsp + 0x270]
lea rcx, [rsp + 0xf0]
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xe8], 0x18
mov dword [rsp + 0xf8], esi
call fcn.1400573bc
test r12b, dil
jne 0x1400b3642
cmp rbx, 0xffffffffffffffff
jne 0x1400b26f9
mov rcx, qword [rsp + 0x58]
lea rax, [rsp + 0xe8]
lea edx, [rbx + 4]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x28], eax
mov r9d, 0xff
xor r8d, r8d
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
mov rbx, rax
test r15b, dil
je 0x1400b3636
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
cmp eax, esi
jne 0x1400b3636
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp rbx, 0xffffffffffffffff
je 0x1400b3648
mov r13d, 0xffffffef
cmp rbx, 0xffffffffffffffff
jne 0x1400b364b
mov rbx, rsi
cmp r13d, 0xfffffff0
je 0x1400b26f9
cmp rbx, rsi
jne 0x1400b26f9
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400b3582
mov rax, qword [rsp + 0x2f8]
cmp word [rax], si
je 0x1400b36e9
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x2f8]
call fcn.14006aa58
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400b36e4
add rdx, r12
lea rcx, [rsp + 0x2f8]
mov qword [rsp + 0x2f8], rdx
lea rdx, [rsp + 0x60]
call fcn.14006ac30
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400b36df
add rdx, r12
lea rcx, [rsp + 0x2f8]
mov qword [rsp + 0x2f8], rdx
lea rdx, [rsp + 0x98]
call fcn.14006ac30
mov r13d, dword [rsp + 0x60]
mov r12, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x98]
mov edx, r13d
mov ecx, r12d
call qword [0x14011b318]
cmp rax, rsi
mov rbx, rax
jg 0x1400b26f9
mov rsi, r15
jmp 0x1400b37cd
cmp dil, sil
jne 0x1400b3726
cmp byte [rsp + 0x78], sil
jne 0x1400b3726
mov rdi, qword [rbp + 0x210]
jmp 0x1400b3729
mov rdi, r14
cmp byte [rsp + 0x68], sil
je 0x1400b3795
lea rdx, [0x140109070]
lea rcx, [rsp + 0x308]
call fcn.140066ba4
mov rdx, qword [rsp + 0xc0]
lea rcx, [rsp + 0x308]
call fcn.14005c040
lea rdx, [0x140109060]
lea rcx, [rsp + 0x308]
call fcn.14005c040
mov r9, qword [rsp + 0x300]
mov rdx, qword [rsp + 0x308]
xor r8d, r8d
mov rcx, r14
call fcn.1400a0904
lea rcx, [rsp + 0x308]
call fcn.140054110
mov eax, dword [rsp + 0x98]
mov qword [rsp + 0x38], r15
lea r8, [rsp + 0xc0]
mov dword [rsp + 0x30], eax
mov r9, rbx
mov rdx, rdi
mov rcx, rbp
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r12
call fcn.14005c990
mov rsi, qword [rsp + 0xd8]
lea rcx, [rsp + 0x58]
call fcn.140054110
lea rcx, [rsp + 0x140]
call fcn.140054110
lea rcx, [rsp + 0x138]
call fcn.140054110
lea rcx, [rsp + 0x128]
call fcn.140054110
lea rcx, [rsp + 0xc0]
call fcn.140054110
mov rax, rsi
add rsp, 0x2a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret