Function at 0x446290
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x475c
call fcn.00543e90
mov eax, dword [0x5c0c70]
xor eax, ebp
mov dword [ebp - 0x48], eax
push str..pipePCMasterSvc
lea ecx, [ebp - 4]
call fcn.0041c8a0
mov dword [ebp - 0x10], 0x800
mov dword [ebp - 0xc], 0
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea ecx, [ebp - 4]
call fcn.0041cb20
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
je 0x446616
push 0xffffffffffffffff
lea ecx, [ebp - 4]
call fcn.0041cb20
push eax
call dword [sym.imp.KERNEL32.dll_WaitNamedPipeW]
test eax, eax
je 0x446600
mov dword [ebp - 0x14], 0
push 0x800
call fcn.004f4318
add esp, 4
mov dword [ebp - 0x4740], eax
mov eax, dword [ebp - 0x4740]
push eax
lea ecx, [ebp - 0x40]
call fcn.004b3360
push 0x800
push 0
lea ecx, [ebp - 0x40]
call fcn.004b33c0
push eax
call fcn.0053ef70
add esp, 0xc
mov dword [ebp - 0x4744], 0x1000
lea ecx, [ebp - 0x4744]
push ecx
mov edx, 0x800
sub edx, dword [ebp - 0x14]
push edx
lea ecx, [ebp - 0x40]
call fcn.004b33c0
add eax, dword [ebp - 0x14]
push eax
call fcn.004eab80
add esp, 0xc
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
lea eax, [ebp + 0x10]
push eax
mov ecx, 0x800
sub ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x40]
call fcn.004b33c0
add eax, dword [ebp - 0x14]
push eax
call fcn.004eabc0
add esp, 0xc
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
lea edx, [ebp + 8]
push edx
mov eax, 0x800
sub eax, dword [ebp - 0x14]
push eax
lea ecx, [ebp - 0x40]
call fcn.004b33c0
add eax, dword [ebp - 0x14]
push eax
call fcn.00453d80
add esp, 0xc
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
lea ecx, [ebp + 0xc]
push ecx
mov edx, 0x800
sub edx, dword [ebp - 0x14]
push edx
lea ecx, [ebp - 0x40]
call fcn.004b33c0
add eax, dword [ebp - 0x14]
push eax
call fcn.00453d80
add esp, 0xc
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x20]
push eax
call fcn.00453e00
push 0x57c054
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00453e40
lea edx, [ebp + 8]
push edx
push 0x57c07c
lea eax, [ebp - 0x4748]
push eax
call fcn.004a6030
add esp, 0xc
push eax
lea ecx, [ebp - 0x44]
call fcn.004a5630
lea ecx, [ebp - 0x4748]
call fcn.0040f740
lea ecx, [ebp + 0xc]
call fcn.0041cc40
movzx ecx, al
test ecx, ecx
jne 0x446471
lea edx, [ebp + 0xc]
push edx
push 0x57c080
lea eax, [ebp - 0x474c]
push eax
call fcn.004a6030
add esp, 0xc
push eax
lea ecx, [ebp - 0x44]
call fcn.004a5630
lea ecx, [ebp - 0x474c]
call fcn.0040f740
lea ecx, [ebp - 0x3c]
call fcn.004524b0
push ecx
mov ecx, esp
push str.pcmasterconfigpcmastersrv.cfg
call fcn.0041c8a0
push ecx
push esp
lea ecx, [ebp - 0x3c]
call fcn.00452f00
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.00452750
push 1
push ecx
mov ecx, esp
lea edx, [ebp - 0x44]
push edx
call fcn.0041c880
lea ecx, [ebp - 0x18]
call fcn.0041cb20
push eax
call fcn.00446650
add esp, 0xc
mov eax, dword [ebp - 0x14]
xor edx, edx
mov ecx, 8
div ecx
test edx, edx
je 0x4464e4
mov eax, dword [ebp - 0x14]
xor edx, edx
mov ecx, 8
div ecx
mov eax, 8
sub eax, edx
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x3738], 0
push 0xfff
push 0
lea ecx, [ebp - 0x3737]
push ecx
call fcn.0053ef70
add esp, 0xc
mov byte [ebp - 0x4738], 0
push 0xfff
push 0
lea edx, [ebp - 0x4737]
push edx
call fcn.0053ef70
add esp, 0xc
push 0
push str._ruanmeipcmaster_svc_named_pipe
lea ecx, [ebp - 0x2738]
call fcn.00452f90
push 0
mov eax, dword [ebp - 0x14]
push eax
lea ecx, [ebp - 0x40]
call fcn.004b33c0
push eax
lea ecx, [ebp - 0x2738]
call fcn.004534e0
mov ecx, dword [ebp - 0x14]
shl ecx, 3
push ecx
lea edx, [ebp - 0x3738]
push edx
lea ecx, [ebp - 0x2738]
call fcn.004534c0
push eax
lea ecx, [ebp - 0x2738]
call fcn.00453390
mov eax, dword [ebp - 0x14]
shl eax, 3
push eax
lea ecx, [ebp - 0x3738]
push ecx
lea edx, [ebp - 0x4738]
push edx
lea ecx, [ebp - 0x2738]
call fcn.004533f0
lea eax, [ebp - 0x4738]
push eax
push 0x800
lea ecx, [ebp - 0x40]
call fcn.004b33c0
push eax
call fcn.0053e089
add esp, 0xc
push 0
lea ecx, [ebp - 0x14]
push ecx
push 0x800
lea ecx, [ebp - 0x40]
call fcn.004b33c0
push eax
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xc], 1
lea ecx, [ebp - 0x18]
call fcn.0040f740
lea ecx, [ebp - 0x3c]
call fcn.004524d0
lea ecx, [ebp - 0x44]
call fcn.0040f740
lea ecx, [ebp - 0x40]
call fcn.004b3380
jmp 0x446616
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x473c], eax
mov dword [ebp - 0x473c], 0
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x475c], ecx
lea ecx, [ebp - 4]
call fcn.0040f740
lea ecx, [ebp + 8]
call fcn.0040f740
lea ecx, [ebp + 0xc]
call fcn.0040f740
mov eax, dword [ebp - 0x475c]
mov ecx, dword [ebp - 0x48]
xor ecx, ebp
call fcn.0053ea90
mov esp, ebp
pop ebp
ret