Function at 0x41a460
Capabilities:
Write file on windows

Disassembly:
push ebp
xor eax, eax
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x7c
mov ebx, dword [ebp + 0xc]
test ebx, ebx
je 0x41a60f
mov ebx, dword [ebp + 0xc]
jmp 0x41a49e
mov eax, dword [ebp - 0x80]
cmp byte [eax], 0
je 0x41a5fe
sub esp, 0xc
mov ebx, eax
lea eax, [ebp - 0x10]
inc ebx
push eax
call fcn.00432bc0
add esp, 0x10
push ecx
push ecx
push 0x2c
push ebx
call sub.msvcrt.dll_strchr
add esp, 0x10
mov dword [ebp - 0x80], eax
test eax, eax
je 0x41a68a
mov eax, dword [ebp - 0x80]
mov edi, str.zz_ZZ
sub eax, ebx
mov dword [ebp - 0x84], eax
push edx
push eax
lea eax, [ebp - 0x10]
push ebx
push eax
call fcn.00433510
mov esi, dword [ebp - 0x10]
cld
mov ecx, 6
repe cmpsb byte [esi], byte es:[edi]
seta dl
setb al
add esp, 0x10
cmp dl, al
jne 0x41a4f1
mov eax, dword [ebp + 8]
mov byte [eax + 0x14], 1
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00403b20
add esp, 0x10
test eax, eax
jne 0x41a6a0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x44]
push ecx
push 7
push 4
push eax
call fcn.00443fd0
mov dword [ebp - 0x44], 0x4c8348
pop eax
lea eax, [ebp - 0x48]
pop edx
push eax
mov edi, dword [ebp + 8]
push edi
call fcn.004440e0
mov ebx, eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x44], 0x4c8348
mov dword [esp], eax
call fcn.004443a0
lea eax, [ebp - 0x44]
mov dword [esp], eax
call fcn.00444210
add esp, 0x10
test ebx, ebx
js 0x41a617
mov eax, dword [ebp - 0x14]
lea ebx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
push eax
push 7
push 4
push ebx
call fcn.00443fd0
mov dword [ebp - 0x74], 0x4c8348
lea esi, [ebp - 0x78]
pop edi
pop eax
push esi
mov ecx, dword [ebp + 8]
push ecx
call fcn.004440e0
mov dword [ebp - 0x74], 0x4c8348
mov dword [esp], ebx
mov esi, eax
call fcn.004443a0
mov dword [esp], ebx
call fcn.00444210
pop eax
pop edx
push esi
mov eax, dword [ebp + 8]
push eax
call fcn.00444500
pop edi
lea ebx, [eax + 4]
pop eax
lea eax, [ebp - 0x18]
push eax
push ebx
call fcn.00444ce0
add esp, 0x10
cmp dword [ebp - 0x14], 3
jne 0x41a480
mov eax, dword [ebp - 0x18]
test eax, 0xffff0000
je 0x41a480
and eax, 0xffff
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push esi
push esi
push eax
push ebx
call fcn.00444ce0
mov eax, dword [ebp - 0x80]
add esp, 0x10
cmp byte [eax], 0
jne 0x41a48c
sub esp, 0xc
lea eax, [ebp - 0x10]
push eax
call fcn.00432bc0
xor eax, eax
add esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
push esi
lea esi, [ebp - 0x30]
push 7
push 4
push esi
call fcn.00443fd0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0x4c8348
mov dword [ebp - 0x60], eax
lea edi, [ebp - 0x60]
pop ecx
pop ebx
lea ebx, [ebp - 0x5c]
push esi
push ebx
call fcn.00444280
mov dword [ebp - 0x5c], 0x4c8348
pop eax
pop edx
push edi
mov eax, dword [ebp + 8]
push eax
call fcn.00444ce0
mov dword [ebp - 0x5c], 0x4c8348
mov dword [esp], ebx
call fcn.004443a0
mov dword [esp], ebx
call fcn.00444210
mov dword [ebp - 0x30], 0x4c8348
mov dword [esp], esi
call fcn.004443a0
mov dword [esp], esi
call fcn.00444210
add esp, 0x10
jmp 0x41a562
sub esp, 0xc
push ebx
call sub.msvcrt.dll_strlen
add esp, 0x10
add eax, ebx
mov dword [ebp - 0x80], eax
jmp 0x41a4b6
mov edi, dword [sym.imp.msvcrt.dll__iob]
push eax
mov eax, dword [ebp + 0xc]
add edi, 0x40
push eax
mov esi, ebx
push str.Invalid_configuration:__s_n
push edi
call sub.msvcrt.dll_fprintf
push edi
push 0x17
push 1
push 0x4b0851
call sub.msvcrt.dll_fwrite
mov eax, dword [ebp + 0xc]
add esp, 0x20
sub esi, eax
test esi, esi
jle 0x41a6ea
xor ebx, ebx
inc ebx
push eax
push eax
push edi
push 0x20
call sub.msvcrt.dll_fputc
add esp, 0x10
cmp ebx, esi
jne 0x41a6d8
mov eax, dword [ebp - 0x84]
test eax, eax
jle 0x41a70c
xor ebx, ebx
inc ebx
push esi
push esi
push edi
push 0x5e
call sub.msvcrt.dll_fputc
add esp, 0x10
cmp ebx, dword [ebp - 0x84]
jne 0x41a6f6
push ebx
push ebx
push edi
push 0xa
call sub.msvcrt.dll_fputc
lea eax, [ebp - 0x10]
mov dword [esp], eax
call fcn.00432bc0
mov eax, 1
add esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret