Function at 0x1400d46f8
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.1400595cc
lea rcx, [rsp + 0x308]
call fcn.1400595bc
xor esi, esi
cmp eax, esi
jne 0x1400d4741
lea eax, [rsi + 1]
jmp 0x1400d62ca
lea rcx, [rsp + 0x308]
call fcn.1400598a0
lea rcx, [rsp + 0xc0]
call fcn.14005fa18
lea rcx, [rsp + 0x128]
call fcn.14005fa18
lea rcx, [rsp + 0x138]
call fcn.14005fa18
lea rcx, [rsp + 0x140]
call fcn.14005fa18
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.140057738
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 0x1400d4ab4
lea r11d, [r12 + 7]
lea r14d, [r12 + 0x21]
cmp dx, word [rdi + 2]
jne 0x1400d4a9e
lea rcx, str.__gethostbyname
mov r8d, 0xf
mov rdx, rdi
call fcn.140058db8
cmp al, sil
je 0x1400d48b4
add rdi, 0x1e
mov qword [rsp + 0x2f8], rdi
movzx eax, word [rdi]
cmp ax, si
je 0x1400d4856
cmp r11w, ax
ja 0x1400d484a
cmp ax, 0xd
jbe 0x1400d4856
mov edx, 0x20
cmp dx, ax
jne 0x1400d485e
jmp 0x1400d485b
mov edx, 0x20
mov bpl, r15b
cmp ax, si
je 0x1400d4a7b
mov ecx, 0x2a
lea r13d, [rcx - 0x26]
cmp r11w, ax
ja 0x1400d487c
cmp ax, 0xd
jbe 0x1400d48a7
cmp dx, ax
je 0x1400d48a7
cmp cx, ax
jne 0x1400d488b
or bpl, r12b
jmp 0x1400d4894
cmp r14w, ax
jne 0x1400d4894
or bpl, r13b
add rdi, r12
mov qword [rsp + 0x2f8], rdi
mov ax, word [rdi]
cmp ax, si
jne 0x1400d4870
mov r13d, dword [rsp + 0xa0]
jmp 0x1400d4a7b
or rdi, 0xffffffffffffffff
lea rdx, [rsp + 0x2f8]
lea rcx, str.__file
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d48e7
mov r13d, edi
mov dword [rsp + 0xa0], edi
mov dword [rsp + 0x60], edi
jmp 0x1400d4a35
lea rdx, [rsp + 0x2f8]
lea rcx, str.__shm
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d490e
mov r13d, 0xfffffffe
jmp 0x1400d49df
lea rdx, [rsp + 0x2f8]
lea rcx, str.__event
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d4935
mov r13d, 0xfffffffc
jmp 0x1400d49df
lea rdx, [rsp + 0x2f8]
lea rcx, str.__semaphore
mov r8d, edi
call fcn.1400623c0
cmp al, sil
jne 0x1400d496d
lea rdx, [rsp + 0x2f8]
lea rcx, str.__sem
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d4975
mov r13d, 0xffffffe0
jmp 0x1400d49df
lea rdx, [rsp + 0x2f8]
lea rcx, str.__mutex
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d4999
mov r13d, 0xffffffc0
jmp 0x1400d49df
lea rdx, [rsp + 0x2f8]
lea rcx, str.__mailslot
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d49bd
mov r13d, 0xfffffff8
jmp 0x1400d49df
lea rdx, [rsp + 0x2f8]
lea rcx, str.__pipe
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d49ee
mov r13d, 0xfffffff0
mov dword [rsp + 0xa0], r13d
mov dword [rsp + 0x60], r13d
jmp 0x1400d4a35
lea rdx, [rsp + 0x2f8]
lea rcx, str.__exist
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d4a14
mov byte [rsp + 0x308], r15b
jmp 0x1400d4a35
lea rdx, [rsp + 0x2f8]
lea rcx, str.__only
mov r8d, edi
call fcn.1400623c0
cmp al, sil
je 0x1400d4a3d
mov byte [rsp + 0x68], r15b
mov r11d, 9
jmp 0x1400d4a88
mov rcx, qword [rsp + 0x2f8]
mov r11d, 9
movzx eax, word [rcx]
cmp ax, si
je 0x1400d4a7b
lea edx, [r11 + 0x17]
cmp r11w, ax
ja 0x1400d4a63
cmp ax, 0xd
jbe 0x1400d4a7b
cmp dx, ax
je 0x1400d4a7b
add rcx, r12
mov qword [rsp + 0x2f8], rcx
mov ax, word [rcx]
cmp ax, si
jne 0x1400d4a57
lea rcx, [rsp + 0x2f8]
call fcn.140057738
mov rdi, qword [rsp + 0x2f8]
mov edx, 0x2d
cmp dx, word [rdi]
je 0x1400d4802
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 0x1400d4ae3
add rdi, r12
lea rcx, [rsp + 0x2f8]
mov byte [rsp + 0x78], r15b
mov qword [rsp + 0x2f8], rdi
call fcn.140057738
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 0x1400d4b64
cmp ax, word [rdi + 2]
jne 0x1400d4b64
lea rax, [0x14012d0c0]
add rdi, r8
mov byte [rsp + 0x50], r15b
mov qword [rsp + 0xc8], rax
mov rax, qword [0x14012d100]
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.140050f00
mov dl, sil
mov byte [rsp + 0x51], dl
mov r10d, 0xffdf
mov r11d, 0x57
cmp r13d, 0xfffffffe
jne 0x1400d4c01
mov rcx, qword [rsp + 0x2f8]
movzx eax, word [rcx]
and ax, r10w
cmp r11w, ax
jne 0x1400d4bd0
add rcx, r12
mov byte [rsp + 0x51], r15b
mov qword [rsp + 0x2f8], rcx
movzx eax, word [rcx]
cmp ax, si
je 0x1400d4c1b
mov edx, 0x3b
lea r8d, [rdx - 0xf]
add rcx, r12
mov qword [rsp + 0x2f8], rcx
cmp r8w, ax
je 0x1400d4c1b
cmp dx, ax
je 0x1400d4c1b
mov ax, word [rcx]
cmp ax, si
jne 0x1400d4be1
jmp 0x1400d4c1b
cmp r13d, 0xfffffffc
je 0x1400d4c13
cmp r13d, 0xffffffe0
je 0x1400d4c13
cmp r13d, 0xffffffc0
jne 0x1400d4c75
mov rcx, qword [rsp + 0x2f8]
mov eax, 0x2e
cmp ax, word [rcx]
jne 0x1400d4c39
add rcx, r12
lea rdx, str.Local_
mov qword [rsp + 0x2f8], rcx
jmp 0x1400d4c55
mov eax, 0x23
cmp ax, word [rcx]
jne 0x1400d4c4e
add rcx, r12
mov qword [rsp + 0x2f8], rcx
lea rdx, [0x14011af28]
lea rcx, [rsp + 0x58]
mov r9, r14
mov r8, r14
call fcn.14005fbd4
mov dl, byte [rsp + 0x51]
mov r11d, 0x57
mov r10d, 0xffdf
cmp bpl, sil
je 0x1400d4f26
lea rcx, [rsp + 0xb8]
call fcn.14005fa18
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.140050f00
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.14005f954
lea rcx, [rsp + 0x48]
call fcn.14005fa18
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 0x1400d4d70
cmp byte [rdi], sil
je 0x1400d4d3a
mov rcx, rdi
call qword [0x14012d528]
mov dword [rsp + 0x98], eax
cmp eax, 0xffffffff
jne 0x1400d4d70
mov dword [rsp + 0x98], esi
mov rcx, rdi
call qword [0x14012d530]
cmp rax, rsi
je 0x1400d4d70
mov rbp, qword [rax + 0x18]
mov bx, word [rax + 0x12]
mov word [rsp + 0x68], bx
cmp qword [rbp], rsi
je 0x1400d4d70
mov al, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov byte [rsp + 0x308], al
jmp 0x1400d4ed8
mov eax, 4
test byte [rsp + 0x40], al
je 0x1400d4e2c
lea eax, [r14 + 0x3e]
lea rcx, [rsp + 0x48]
movsxd rdx, eax
call fcn.14005fb18
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.14001c8fc
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x2f8]
lea r8, str.0x_08I64X
call fcn.1400d9334
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 0x1400d4eb4
movsx ebx, bx
lea eax, [rbx + rbx*2]
lea ecx, [r14 + rax*2]
movsxd rdx, ecx
lea rcx, [rsp + 0x48]
call fcn.14005fb18
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 0x1400d4ea9
movzx r8d, byte [r13]
lea rdx, [0x14011b1e0]
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 0x1400d4e64
mov bx, word [rsp + 0x68]
sub rdx, r12
mov word [rdx], si
test byte [rsp + 0x308], r12b
je 0x1400d4eea
cmp qword [rbp], rsi
je 0x1400d4eea
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 0x1400d4eea
add rbp, 8
jmp 0x1400d4d70
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x2f0]
mov r8, rdi
call fcn.14005ee18
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0xb0]
call fcn.140057768
lea rcx, [rsp + 0xb8]
jmp 0x1400d519e
or r14, 0xffffffffffffffff
mov qword [rsp + 0xd8], rsi
cmp r13d, r14d
jne 0x1400d5212
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 0x1400d4f75
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 0x1400d4f9b
add rcx, r12
mov dword [rsp + 0x70], 3
mov qword [rsp + 0x2f8], rcx
mov eax, 0x2d
cmp ax, word [rcx]
jne 0x1400d4fb6
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 0x1400d5030
mov r9d, 0x3b
lea r8d, [r9 - 0xf]
lea r13d, [r9 - 0x37]
add rcx, r12
mov qword [rsp + 0x2f8], rcx
cmp r8w, ax
je 0x1400d5028
cmp r9w, ax
je 0x1400d5028
and ax, r10w
cmp rdx, rsi
je 0x1400d5020
mov r8d, 0x52
cmp r8w, ax
jne 0x1400d5000
or r14d, r15d
jmp 0x1400d501a
cmp r11w, ax
jne 0x1400d500b
or r14d, r12d
jmp 0x1400d501a
mov r8d, 0x44
cmp r8w, ax
jne 0x1400d501a
or r14d, r13d
mov r8d, 0x2c
mov ax, word [rcx]
cmp ax, si
jne 0x1400d4fcf
mov r13d, dword [rsp + 0xa0]
lea rcx, [rsp + 0x90]
call fcn.14005fa18
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.140050f00
mov rcx, qword [rsp + 0x90]
call fcn.14001ae54
mov rdi, rax
cmp word [rax], si
jne 0x1400d509f
lea rcx, [rsp + 0x90]
call fcn.140057768
cmp byte [rsp + 0x308], sil
jne 0x1400d6032
mov rsi, 0xffffffff80070057
jmp 0x1400d6289
cmp dword [rsp + 0x70], 3
jne 0x1400d5136
cmp r14d, esi
je 0x1400d5136
mov eax, 0x5c
cmp ax, word [rdi]
jne 0x1400d5112
cmp ax, word [rdi + 2]
jne 0x1400d5112
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.1400037e8
mov rcx, qword [rsp + 0xa8]
cmp rcx, rsi
je 0x1400d516d
cmp rcx, 0xffffffffffffffff
je 0x1400d5136
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400d5136
mov rcx, rdi
call fcn.1400f2c48
movabs rcx, 0x100000010
and rax, rcx
movabs rcx, 0x100000000
cmp rax, rcx
jne 0x1400d516d
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.1400037e8
mov rbx, rax
cmp byte [rsp + 0x308], sil
je 0x1400d5189
lea rcx, [rsp + 0x90]
call fcn.140057768
jmp 0x1400d601f
cmp rbx, rsi
jne 0x1400d51a8
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x90]
mov esi, eax
call fcn.140057768
jmp 0x1400d6289
lea rcx, [rsp + 0x90]
call fcn.140057768
mov r15, rsi
mov rbp, qword [rsp + 0xe0]
mov dil, byte [rsp + 0x50]
mov r14, qword [rsp + 0xc8]
cmp rbp, rsi
jne 0x1400d61cd
mov al, dil
mov rcx, r14
neg al
sbb rdx, rdx
and rdx, qword [rsp + 0x2f0]
call fcn.14001a3e0
mov rbp, qword [r14 + 0x40]
cmp rbp, rsi
jne 0x1400d61cd
cmp rbx, rsi
je 0x1400d5093
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400d5093
cmp r13d, 0xfffffffe
jne 0x1400d5778
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 0x1400d5272
mov r14d, dword [rsp + 0x98]
mov r15d, eax
mov dword [rsp + 0x60], 0xc0000000
mov dword [rsp + 0x70], eax
lea rcx, [rsp + 0x48]
call fcn.14005fa18
lea rcx, [rsp + 0xb0]
call fcn.14005fa18
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.140050f00
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400d535e
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x2f8]
call fcn.14006eb98
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400d5354
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.140050f00
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400d5354
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x2f8]
call fcn.14006eb98
mov rdx, qword [rsp + 0x2f8]
mov rbx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xd0]
jmp 0x1400d5361
mov rbx, qword [rsp + 0xb8]
jmp 0x1400d5361
mov rbx, rsi
mov rax, qword [rsp + 0x48]
cmp word [rax], si
je 0x1400d575c
cmp rbx, rsi
jl 0x1400d575c
cmp rdi, rsi
jl 0x1400d575c
cmp word [rdx], si
je 0x1400d53ed
add rdx, r12
lea rcx, [rsp + 0x2f8]
mov qword [rsp + 0x2f8], rdx
lea rdx, [rsp + 0x90]
call fcn.1400073b0
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 0x1400d53e5
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x2f8]
call fcn.1400073b0
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.14005fb54
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x58]
call fcn.14005fb54
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 0x1400d54b7
lea rcx, [rsp + 0xb0]
call fcn.140057768
lea rcx, [rsp + 0x48]
call fcn.140057768
mov r15d, 1
jmp 0x1400d601f
cmp rbx, rsi
jne 0x1400d55da
mov rcx, qword [rsp + 0xb0]
cmp word [rcx], si
je 0x1400d5537
call fcn.14001ae54
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.1400037e8
mov qword [rsp + 0xb8], rax
cmp rax, rsi
jne 0x1400d5537
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0xb0]
mov esi, eax
call fcn.140057768
lea rcx, [rsp + 0x48]
jmp 0x1400d519e
xor edx, edx
lea rcx, [rsp + 0x1f9]
mov byte [rsp + 0x1f8], sil
lea r8d, [rdx + 0x27]
call fcn.1400f3900
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.14005acd4
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 0x1400d561e
jmp 0x1400d55ea
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 0x1400d562d
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp r12, rsi
jne 0x1400d5653
cmp rbx, rsi
je 0x1400d5518
cmp rbx, 0xffffffffffffffff
je 0x1400d5518
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400d5518
mov r15, qword [rsp + 0xa8]
mov eax, dword [rsp + 0x88]
sub r15, qword [rsp + 0x120]
cmp r14d, esi
je 0x1400d5677
cmp eax, esi
je 0x1400d5677
mov qword [r12], r15
cdqe
add r12, rax
cmp r14d, esi
je 0x1400d5738
movsxd rax, dword [rsp + 0x90]
cmp eax, esi
je 0x1400d569f
lea rcx, [r15 + r12]
mov r8, rax
xor edx, edx
call fcn.1400f3900
cmp r14d, esi
je 0x1400d5738
cmp dword [rsp + 0x80], esi
jle 0x1400d5738
cmp rbp, rsi
jle 0x1400d5738
cmp r12, rsi
je 0x1400d5738
movabs rcx, 0x100000000
cmp r13, rcx
jb 0x1400d56e7
shr rbp, 3
sub rbp, 1
js 0x1400d5738
lea rcx, [rbp + 1]
mov rdi, r12
mov rax, r13
rep stosq qword [rdi], rax
jmp 0x1400d5738
cmp r13, 0x10000
jb 0x1400d5708
shr rbp, 2
sub rbp, 1
js 0x1400d5738
lea rcx, [rbp + 1]
mov eax, r13d
mov rdi, r12
rep stosd dword [rdi], eax
jmp 0x1400d5738
cmp r13, 0x100
jb 0x1400d572a
shr rbp, 1
sub rbp, 1
js 0x1400d5738
lea rcx, [rbp + 1]
movzx eax, r13w
mov rdi, r12
rep stosw word [rdi], ax
jmp 0x1400d5738
mov r8, rbp
mov edx, r13d
mov rcx, r12
call fcn.1400f3900
lea rcx, [rsp + 0xb0]
call fcn.140057768
lea rcx, [rsp + 0x48]
call fcn.140057768
mov r13d, dword [rsp + 0xa0]
jmp 0x1400d51b8
lea rcx, [rsp + 0xb0]
call fcn.140057768
lea rcx, [rsp + 0x48]
call fcn.140057768
jmp 0x1400d5093
cmp r13d, 0xfffffffc
jne 0x1400d593c
lea rcx, [rsp + 0x60]
call fcn.14005fa18
lea rcx, [rsp + 0x48]
call fcn.14005fa18
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.140050f00
mov rdx, qword [rsp + 0x60]
cmp word [rdx], si
jne 0x1400d57d3
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x60]
jmp 0x1400d576e
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.14000738c
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x2f8]
call fcn.14000738c
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
call fcn.14000738c
lea rdx, str.pecmd2012.event.
lea rcx, [rsp + 0x58]
call fcn.14005fb54
mov rdx, qword [rsp + 0x60]
lea rcx, [rsp + 0x58]
call fcn.14005fb54
mov dil, byte [rsp + 0x308]
cmp dil, sil
jne 0x1400d5854
cmp dword [rsp + 0x70], esi
jne 0x1400d5890
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 0x1400d5887
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x60]
jmp 0x1400d517f
cmp rax, rsi
jne 0x1400d5928
xor edx, edx
lea rcx, [rsp + 0x1a9]
mov byte [rsp + 0x1a8], sil
lea r8d, [rdx + 0x27]
call fcn.1400f3900
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.14005acd4
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 0x1400d5928
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x48]
mov esi, eax
call fcn.140057768
lea rcx, [rsp + 0x60]
jmp 0x1400d519e
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x60]
jmp 0x1400d51b0
cmp r13d, 0xffffffe0
jne 0x1400d5b2d
lea rcx, [rsp + 0x70]
call fcn.14005fa18
lea rcx, [rsp + 0x48]
call fcn.14005fa18
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.140050f00
mov rdx, qword [rsp + 0x70]
cmp word [rdx], si
jne 0x1400d599a
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x70]
jmp 0x1400d576e
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.14000738c
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
call fcn.14000738c
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x2f8]
call fcn.14000738c
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.14005fb54
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x58]
call fcn.14005fb54
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 0x1400d5a5d
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x70]
jmp 0x1400d517f
cmp rax, rsi
jne 0x1400d5b19
xor edx, edx
lea rcx, [rsp + 0x249]
mov byte [rsp + 0x248], sil
lea r8d, [rdx + 0x27]
call fcn.1400f3900
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.14005acd4
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 0x1400d5b08
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x70]
call fcn.140057768
mov rsi, r14
jmp 0x1400d6289
cmp edi, r15d
jge 0x1400d5b19
or edx, 0xffffffff
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x70]
jmp 0x1400d51b0
cmp r13d, 0xffffffc0
jne 0x1400d5ccc
lea rcx, [rsp + 0x88]
call fcn.14005fa18
lea rcx, [rsp + 0x48]
call fcn.14005fa18
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.140050f00
mov rdx, qword [rsp + 0x88]
cmp word [rdx], si
jne 0x1400d5b97
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x88]
jmp 0x1400d576e
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
mov dword [rsp + 0x80], esi
call fcn.14000738c
lea rdx, str.pecmd2012.mutex.
lea rcx, [rsp + 0x58]
call fcn.14005fb54
mov rdx, qword [rsp + 0x88]
lea rcx, [rsp + 0x58]
call fcn.14005fb54
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 0x1400d5c0c
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x88]
jmp 0x1400d517f
cmp rax, rsi
jne 0x1400d5cb5
xor edx, edx
lea rcx, [rsp + 0x1d1]
mov byte [rsp + 0x1d0], sil
lea r8d, [rdx + 0x27]
call fcn.1400f3900
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.14005acd4
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 0x1400d5cb5
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x88]
jmp 0x1400d5afb
lea rcx, [rsp + 0x48]
call fcn.140057768
lea rcx, [rsp + 0x88]
jmp 0x1400d51b0
cmp r13d, 0xfffffff8
jne 0x1400d5ed7
lea rcx, [rsp + 0x80]
call fcn.14005fa18
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.140050f00
mov rdx, qword [rsp + 0x80]
cmp word [rdx], si
jne 0x1400d5d22
lea rcx, [rsp + 0x80]
jmp 0x1400d576e
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x2f8]
mov dword [rsp + 0x60], esi
call fcn.14000738c
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.14000738c
lea rdx, str..mailslotpecmd2012.mailslot.
lea rcx, [rsp + 0x58]
mov r9, r14
mov r8, r14
call fcn.14005fbd4
mov rdx, qword [rsp + 0x80]
lea rcx, [rsp + 0x58]
call fcn.14005fb54
xor edx, edx
lea rcx, [rsp + 0x221]
lea r8d, [rdx + 0x27]
mov byte [rsp + 0x220], sil
call fcn.1400f3900
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.14005acd4
mov bpl, byte [rsp + 0x308]
cmp bpl, sil
jne 0x1400d5e20
cmp dword [rsp + 0x60], esi
je 0x1400d5e20
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 0x1400d5e04
mov rbx, rsi
cmp rbx, rsi
jne 0x1400d5eb8
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x80]
jmp 0x1400d519c
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 0x1400d5ec5
cmp rbx, r14
jne 0x1400d5e04
cmp dword [rsp + 0x70], 0xffffffff
je 0x1400d5e7a
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, edi
cmp eax, dword [rsp + 0x70]
jae 0x1400d5e01
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 0x1400d5e60
lea rcx, [rsp + 0x80]
jmp 0x1400d51b0
lea rcx, [rsp + 0x80]
call fcn.140057768
jmp 0x1400d6018
cmp r13d, 0xfffffff0
jne 0x1400d6125
lea rcx, [rsp + 0xa0]
call fcn.14005fa18
lea rcx, [rsp + 0xa8]
call fcn.14005fa18
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.140050f00
mov rdx, qword [rsp + 0xa0]
cmp word [rdx], si
jne 0x1400d5f47
lea rcx, [rsp + 0xa8]
call fcn.140057768
lea rcx, [rsp + 0xa0]
jmp 0x1400d576e
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x2f8]
call fcn.14000738c
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x2f8]
call fcn.14000738c
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x2f8]
call fcn.14000738c
lea rdx, str..pipepecmd2012.pipe.
lea rcx, [rsp + 0x58]
mov r9, r14
mov r8, r14
call fcn.14005fbd4
mov rdx, qword [rsp + 0xa0]
lea rcx, [rsp + 0x58]
call fcn.14005fb54
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.140057768
lea rcx, [rsp + 0xa0]
call fcn.140057768
mov ebp, dword [rsp + 0x88]
mov eax, 4
test al, dil
jne 0x1400d6045
mov rcx, qword [rsp + 0x58]
mov eax, edi
mov r8d, esi
and eax, 3
mov edx, ebp
cmp al, 3
sete r8b
call fcn.14005ad04
mov rbx, rax
cmp r14b, sil
je 0x1400d6045
or r14, 0xffffffffffffffff
cmp rbx, r14
cmove rbx, rsi
cmp rbx, rsi
je 0x1400d6032
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400d6289
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, esi
cmove eax, r15d
mov esi, eax
jmp 0x1400d6289
xor edx, edx
lea rcx, [rsp + 0x271]
mov byte [rsp + 0x270], sil
lea r8d, [rdx + 0x27]
call fcn.1400f3900
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.14005acd4
test r12b, dil
jne 0x1400d60fe
cmp rbx, 0xffffffffffffffff
jne 0x1400d51b5
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 0x1400d60f2
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
cmp eax, esi
jne 0x1400d60f2
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp rbx, 0xffffffffffffffff
je 0x1400d6104
mov r13d, 0xffffffef
cmp rbx, 0xffffffffffffffff
jne 0x1400d6107
mov rbx, rsi
cmp r13d, 0xfffffff0
je 0x1400d51b5
cmp rbx, rsi
jne 0x1400d51b5
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x1400d603e
mov rax, qword [rsp + 0x2f8]
cmp word [rax], si
je 0x1400d61a5
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x2f8]
call fcn.14006eb98
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400d61a0
add rdx, r12
lea rcx, [rsp + 0x2f8]
mov qword [rsp + 0x2f8], rdx
lea rdx, [rsp + 0x60]
call fcn.14006ee08
mov rdx, qword [rsp + 0x2f8]
cmp word [rdx], si
je 0x1400d619b
add rdx, r12
lea rcx, [rsp + 0x2f8]
mov qword [rsp + 0x2f8], rdx
lea rdx, [rsp + 0x98]
call fcn.14006ee08
mov r13d, dword [rsp + 0x60]
mov r12, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x98]
mov edx, r13d
mov ecx, r12d
call qword [0x14012d498]
cmp rax, rsi
mov rbx, rax
jg 0x1400d51b5
mov rsi, r15
jmp 0x1400d6289
cmp dil, sil
jne 0x1400d61e2
cmp byte [rsp + 0x78], sil
jne 0x1400d61e2
mov rdi, qword [rbp + 0x270]
jmp 0x1400d61e5
mov rdi, r14
cmp byte [rsp + 0x68], sil
je 0x1400d6251
lea rdx, [0x14011b138]
lea rcx, [rsp + 0x308]
call fcn.14006ac98
mov rdx, qword [rsp + 0xc0]
lea rcx, [rsp + 0x308]
call fcn.14005fb54
lea rdx, str..del
lea rcx, [rsp + 0x308]
call fcn.14005fb54
mov r9, qword [rsp + 0x300]
mov rdx, qword [rsp + 0x308]
xor r8d, r8d
mov rcx, r14
call fcn.1400d129c
lea rcx, [rsp + 0x308]
call fcn.140057768
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.1400604d4
mov rsi, qword [rsp + 0xd8]
lea rcx, [rsp + 0x58]
call fcn.140057768
lea rcx, [rsp + 0x140]
call fcn.140057768
lea rcx, [rsp + 0x138]
call fcn.140057768
lea rcx, [rsp + 0x128]
call fcn.140057768
lea rcx, [rsp + 0xc0]
call fcn.140057768
mov rax, rsi
add rsp, 0x2a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret