Function at 0x409afc
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff7b0
push esi
push edi
mov eax, 0x478dfc
call fcn.0046a008
push 0x482be0
call sub.KERNEL32.DLL_EnterCriticalSection
mov esi, 0x47851c
lea edi, [ebp - 0x450]
mov ecx, 0x100
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp + 0xc]
mov dword [ebp - 0x44], eax
push dword [ebp - 0x44]
push dword [ebp + 8]
lea edx, [ebp - 0x450]
push edx
call fcn.0046b82c
add esp, 0xc
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x48]
mov byte [ebp + ecx - 0x450], 0
mov esi, 0x47891c
lea edi, [ebp - 0x850]
mov ecx, 0x100
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x450]
push eax
mov word [ebp - 0x30], 8
lea eax, [ebp - 8]
call fcn.00401abc
inc dword [ebp - 0x24]
call fcn.00409a78
lea eax, [ebp - 8]
call fcn.00401fd8
push eax
push str._s_t_s_r_n
lea edx, [ebp - 0x850]
push edx
call fcn.0046b804
add esp, 0x10
mov dword [ebp - 0x48], eax
dec dword [ebp - 0x24]
lea eax, [ebp - 8]
mov edx, 2
call fcn.00473f7c
mov word [ebp - 0x30], 0x20
lea eax, [ebp - 0xc]
call fcn.00401abc
mov edx, eax
inc dword [ebp - 0x24]
mov ecx, dword [0x482a30]
mov eax, dword [ecx]
call fcn.004556b4
lea edx, [ebp - 0xc]
push dword [edx]
lea eax, [ebp - 0x10]
call fcn.00401abc
mov edx, eax
inc dword [ebp - 0x24]
pop eax
call fcn.00420ff8
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 4]
call fcn.00401abc
push eax
inc dword [ebp - 0x24]
mov edx, str.log_
lea eax, [ebp - 0x14]
call fcn.00473eac
inc dword [ebp - 0x24]
lea edx, [ebp - 0x14]
pop ecx
pop eax
call fcn.00473fd4
dec dword [ebp - 0x24]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.00473f7c
dec dword [ebp - 0x24]
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.00473f7c
dec dword [ebp - 0x24]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00473f7c
mov word [ebp - 0x30], 0x14
mov eax, dword [ebp - 4]
call fcn.00420f3c
test al, al
jne 0x409c61
mov eax, dword [ebp - 4]
call fcn.0042115c
mov word [ebp - 0x30], 0x2c
lea eax, [ebp - 0x1c]
call fcn.00401abc
push eax
inc dword [ebp - 0x24]
mov edx, str.ClientDefense.log
lea eax, [ebp - 0x18]
call fcn.00473eac
inc dword [ebp - 0x24]
lea edx, [ebp - 0x18]
lea eax, [ebp - 4]
pop ecx
call fcn.00473fd4
lea edx, [ebp - 0x1c]
lea eax, [ebp - 4]
call fcn.00473fac
dec dword [ebp - 0x24]
lea eax, [ebp - 0x1c]
mov edx, 2
call fcn.00473f7c
dec dword [ebp - 0x24]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.00473f7c
push 0
push 0x80
push 4
push 0
push 3
push 0xc0000000
lea eax, [ebp - 4]
call fcn.00401fd8
push eax
call sub.KERNEL32.DLL_CreateFileA
mov dword [ebp - 0x4c], eax
mov word [ebp - 0x30], 0x14
cmp dword [ebp - 0x4c], 0xffffffff
jne 0x409d05
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00473f7c
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x409d57
push 2
push 0
push 0
push dword [ebp - 0x4c]
call sub.KERNEL32.DLL_SetFilePointer
push 0
lea eax, [ebp - 0x50]
push eax
push dword [ebp - 0x48]
lea edx, [ebp - 0x850]
push edx
push dword [ebp - 0x4c]
call sub.KERNEL32.DLL_WriteFile
push dword [ebp - 0x4c]
call sub.KERNEL32.DLL_CloseHandle
push 0x482be0
call sub.KERNEL32.DLL_LeaveCriticalSection
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00473f7c
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret