Function at 0x423ed6
Capabilities:
Write file on windows

Disassembly:
push 0x934
mov eax, 0x44978c
call fcn.0042f3f0
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x91c], eax
mov eax, dword [ebp + 0xc]
push 7
mov dword [ebp - 0x920], eax
pop esi
xor ebx, ebx
xor eax, eax
mov dword [ebp - 0x918], edi
mov dword [ebp - 0x888], esi
mov dword [ebp - 0x88c], ebx
mov word [ebp - 0x89c], ax
lea eax, [ebp - 0x89c]
push eax
push 0x405764
push 0x2a
mov dword [ebp - 4], ebx
mov dword [ebp - 0x8f4], ebx
call fcn.0042b43d
add esp, 0xc
test al, al
jne 0x423f52
push ebx
push 1
lea ecx, [ebp - 0x89c]
call fcn.0040aa24
mov al, 1
jmp 0x4243bf
cmp dword [ebp - 0x888], 8
mov eax, dword [ebp - 0x89c]
jae 0x423f67
lea eax, [ebp - 0x89c]
push 0xa
push ebx
push eax
call fcn.0042fa7f
add esp, 0xc
mov dword [ebp - 0x914], eax
cmp eax, ebx
je 0x423f3d
xor eax, eax
push 0x7fe
mov word [ebp - 0x810], ax
lea eax, [ebp - 0x80e]
push ebx
push eax
call fcn.0042f6d0
add esp, 0xc
mov ecx, 0x800
lea eax, [ebp - 0x810]
mov byte [eax], bl
inc eax
dec ecx
jne 0x423fa6
mov dword [ebp - 0x910], ebx
cmp dword [ebp - 0x914], ebx
jle 0x424393
xor eax, eax
push 0x405754
lea ecx, [ebp - 0x880]
mov dword [ebp - 0x86c], esi
mov dword [ebp - 0x870], ebx
mov word [ebp - 0x880], ax
call fcn.0040b36d
push 0xa
lea eax, [ebp - 0x810]
push eax
push dword [ebp - 0x910]
mov byte [ebp - 4], 1
call fcn.00421586
add esp, 0xc
push eax
lea ecx, [ebp - 0x880]
call fcn.0040cf83
xor eax, eax
mov dword [ebp - 0x834], esi
mov dword [ebp - 0x838], ebx
mov word [ebp - 0x848], ax
cmp dword [ebp - 0x86c], 8
mov eax, dword [ebp - 0x880]
mov byte [ebp - 4], 2
jae 0x424038
lea eax, [ebp - 0x880]
lea ecx, [ebp - 0x848]
push ecx
push eax
push 0x2a
call fcn.0042b43d
add esp, 0xc
test al, al
je 0x42435c
xor eax, eax
push 0x405740
lea ecx, [ebp - 0x864]
mov dword [ebp - 0x850], esi
mov dword [ebp - 0x854], ebx
mov word [ebp - 0x864], ax
call fcn.0040b36d
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x864]
mov byte [ebp - 4], 3
call fcn.0040cf83
cmp dword [ebp - 0x850], 8
mov eax, dword [ebp - 0x864]
mov dword [ebp - 0x8f4], ebx
jae 0x4240a8
lea eax, [ebp - 0x864]
lea ecx, [ebp - 0x8f4]
push ecx
push ebx
push eax
push 0x2a
push dword [0x451f40]
call fcn.00429d45
add esp, 0x14
cmp eax, 0xea
jne 0x42434e
cmp dword [ebp - 0x8f4], ebx
je 0x42434e
lea eax, [ebp - 0x909]
push eax
push dword [ebp - 0x8f4]
lea ecx, [ebp - 0x908]
mov byte [ebp - 0x909], bl
mov dword [ebp - 0x908], ebx
mov dword [ebp - 0x904], ebx
mov dword [ebp - 0x900], ebx
call fcn.00422b59
mov eax, dword [ebp - 0x864]
push 8
pop edi
mov byte [ebp - 4], 4
cmp dword [ebp - 0x850], edi
jae 0x424123
lea eax, [ebp - 0x864]
lea ecx, [ebp - 0x8f4]
push ecx
push dword [ebp - 0x908]
push eax
push 0x2a
push dword [0x451f40]
call fcn.00429d45
xor eax, eax
add esp, 0x14
mov dword [ebp - 0x818], esi
mov dword [ebp - 0x81c], ebx
mov word [ebp - 0x82c], ax
mov ecx, dword [ebp - 0x848]
mov byte [ebp - 4], 5
cmp dword [ebp - 0x834], edi
jae 0x42416e
lea ecx, [ebp - 0x848]
mov eax, dword [ebp - 0x91c]
cmp dword [eax + 0x14], edi
jb 0x42417b
mov eax, dword [eax]
push ebx
push ecx
push eax
lea eax, [ebp - 0x82c]
push ebx
push eax
call fcn.0042bf95
xor eax, eax
add esp, 0x14
mov dword [ebp - 0x8a4], esi
mov dword [ebp - 0x8a8], ebx
mov word [ebp - 0x8b8], ax
mov dword [ebp - 0x8dc], esi
mov dword [ebp - 0x8e0], ebx
mov word [ebp - 0x8f0], ax
mov dword [ebp - 0x8c0], esi
mov dword [ebp - 0x8c4], ebx
mov word [ebp - 0x8d4], ax
mov eax, dword [ebp - 0x82c]
mov byte [ebp - 4], 8
cmp dword [ebp - 0x818], edi
jae 0x4241e1
lea eax, [ebp - 0x82c]
push ebx
push ebx
lea ecx, [ebp - 0x8f0]
push ecx
lea ecx, [ebp - 0x8b8]
push ecx
push eax
call fcn.0042be87
mov ecx, dword [ebp - 0x8f0]
add esp, 0x14
cmp dword [ebp - 0x8dc], edi
jae 0x42420e
lea ecx, [ebp - 0x8f0]
mov eax, dword [ebp - 0x8b8]
cmp dword [ebp - 0x8a4], edi
jae 0x424222
lea eax, [ebp - 0x8b8]
push ebx
push ebx
push ecx
push eax
lea eax, [ebp - 0x8d4]
push eax
call fcn.0042bf95
mov eax, dword [ebp - 0x8d4]
add esp, 0x14
cmp dword [ebp - 0x8c0], edi
jae 0x424249
lea eax, [ebp - 0x8d4]
push eax
call fcn.0042c9db
mov eax, dword [ebp - 0x82c]
pop ecx
cmp dword [ebp - 0x818], edi
jae 0x424264
lea eax, [ebp - 0x82c]
push ebx
push 0x80
push 2
push ebx
push ebx
push 0x40000000
push eax
call dword [0x451518]
mov edi, eax
cmp edi, 0xffffffff
je 0x4242aa
push ebx
lea eax, [ebp - 0x8f8]
push eax
push dword [ebp - 0x8f4]
mov dword [ebp - 0x8f8], ebx
push dword [ebp - 0x908]
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebx
je 0x4243c5
mov ecx, dword [ebp - 0x920]
lea eax, [ebp - 0x848]
push eax
call fcn.00418ca3
mov ecx, dword [ebp - 0x918]
lea eax, [ebp - 0x82c]
push eax
call fcn.00418ca3
cmp edi, 0xffffffff
je 0x4242da
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor edi, edi
push ebx
inc edi
push edi
lea ecx, [ebp - 0x8d4]
call fcn.0040aa24
push ebx
push edi
lea ecx, [ebp - 0x8f0]
call fcn.0040aa24
push ebx
push edi
lea ecx, [ebp - 0x8b8]
call fcn.0040aa24
push ebx
push edi
lea ecx, [ebp - 0x82c]
call fcn.0040aa24
lea ecx, [ebp - 0x908]
call fcn.0040c13b
push ebx
push edi
lea ecx, [ebp - 0x864]
call fcn.0040aa24
push ebx
push edi
lea ecx, [ebp - 0x848]
call fcn.0040aa24
push ebx
push edi
lea ecx, [ebp - 0x880]
mov byte [ebp - 4], bl
call fcn.0040aa24
mov edi, dword [ebp - 0x918]
jmp 0x42437b
push ebx
push 1
lea ecx, [ebp - 0x864]
call fcn.0040aa24
push ebx
push 1
lea ecx, [ebp - 0x848]
call fcn.0040aa24
push ebx
push 1
lea ecx, [ebp - 0x880]
mov byte [ebp - 4], bl
call fcn.0040aa24
inc dword [ebp - 0x910]
mov eax, dword [ebp - 0x910]
cmp eax, dword [ebp - 0x914]
jl 0x423fbe
mov eax, dword [edi + 4]
sub eax, dword [edi]
push 0x1c
pop ecx
cdq
idiv ecx
push ebx
push 1
lea ecx, [ebp - 0x89c]
cmp eax, dword [ebp - 0x914]
sete byte [ebp - 0x909]
call fcn.0040aa24
mov al, byte [ebp - 0x909]
call fcn.0042f482
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
push edi
mov esi, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x818], 8
mov ecx, dword [ebp - 0x82c]
jae 0x4243e9
lea ecx, [ebp - 0x82c]
cmp dword [ebp - 0x834], 8
mov eax, dword [ebp - 0x848]
jae 0x4243fe
lea eax, [ebp - 0x848]
push ecx
push eax
push 0x58f
lea eax, [ebp - 0x940]
push esi
push eax
call fcn.0040ad7d
add esp, 0x14
push 0x44a7b4
lea eax, [ebp - 0x940]
push eax
call fcn.0042ee98
int3