Function at 0x410dd0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
cmp dword [ebp + 8], 0
jne 0x410e0a
push 0x2007000c
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x411130
cmp dword [ebp + 0xc], 0
jne 0x410e21
mov eax, dword [ebp + 8]
mov dword [eax + 0x20], 0x2007000c
xor eax, eax
jmp 0x411130
cmp dword [ebp + 0x10], 0
jne 0x410e38
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x20], 0x2007000c
xor eax, eax
jmp 0x411130
cmp dword [ebp + 0x14], 0
jne 0x410e4f
mov edx, dword [ebp + 8]
mov dword [edx + 0x20], 0x2007000c
xor eax, eax
jmp 0x411130
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1028], 0
je 0x410e67
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x1040], 0
jne 0x410e6e
xor eax, eax
jmp 0x411130
cmp dword [ebp + 0x18], 0
je 0x410e7d
cmp dword [ebp + 0x18], 0x3a98
jbe 0x410e86
mov dword [ebp - 8], 0x7d0
jmp 0x410e8c
mov edx, dword [ebp + 0x18]
mov dword [ebp - 8], edx
mov eax, dword [ebp + 0x14]
mov dword [eax], 0
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x10a4], 0
jne 0x410eb8
mov edx, dword [ebp + 8]
push edx
call fcn.00410c70
add esp, 4
test eax, eax
jne 0x410eb8
xor eax, eax
jmp 0x411130
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1084], 0
je 0x410f83
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x10a0]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x410f16
mov dword [ebp - 0xc], 1
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1084], 0
mov edx, dword [ebp + 8]
mov dword [edx + 0x20ac], 0
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1088]
mov dword [eax], edx
jmp 0x410f6f
cmp dword [ebp - 0x10], 0x102
jne 0x410f3f
mov eax, dword [ebp + 8]
mov dword [eax + 0x20], 0x2007000b
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1084], 1
mov dword [ebp - 0xc], 0
jmp 0x410f6f
mov edx, dword [ebp + 8]
mov dword [edx + 0x20], 0x2007000e
mov dword [ebp - 0xc], 0
mov eax, dword [ebp + 8]
mov dword [eax + 0x1084], 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1044]
call ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00410c40
add esp, 4
mov eax, dword [ebp - 0xc]
jmp 0x411130
push 0x14
push 0
mov eax, dword [ebp + 8]
add eax, 0x108c
push eax
call fcn.00401740
add esp, 0xc
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x10a0]
mov dword [ecx + 0x109c], eax
cmp dword [ebp + 0x10], 0x1000
jb 0x410fc2
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1088], 0x1000
jmp 0x410fce
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x1088], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1088]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x10a8
push ecx
call fcn.00401320
add esp, 0xc
mov edx, dword [ebp + 8]
add edx, 0x108c
push edx
lea eax, [ebp - 4]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1088]
push edx
mov eax, dword [ebp + 8]
add eax, 0x10a8
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x411032
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
mov dword [eax], ecx
jmp 0x411121
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x3e5
jne 0x4110f1
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10a0]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x411096
mov edx, dword [ebp + 8]
mov dword [edx + 0x1084], 0
mov eax, dword [ebp + 8]
mov dword [eax + 0x20ac], 0
mov dword [ebp - 0xc], 1
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x1088]
mov dword [ecx], eax
jmp 0x4110ef
cmp dword [ebp - 0x10], 0x102
jne 0x4110bf
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x20], 0x2007000b
mov edx, dword [ebp + 8]
mov dword [edx + 0x1084], 1
mov dword [ebp - 0xc], 0
jmp 0x4110ef
mov eax, dword [ebp + 8]
mov dword [eax + 0x20], 0x2007000e
mov dword [ebp - 0xc], 0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1084], 0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1044]
call edx
jmp 0x411121
mov eax, dword [ebp + 8]
mov dword [eax + 0x20], 0x2007000e
mov dword [ebp - 0xc], 0
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x1084], 0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1044]
call edx
mov eax, dword [ebp + 8]
push eax
call fcn.00410c40
add esp, 4
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret