Function at 0x4142a3
Capabilities:
Write file on windows

Disassembly:
push 0x48
push 0x441398
call fcn.0043f1cc
xor ebx, ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x34], ebx
mov eax, dword [0x4a7d94]
mov ecx, dword [eax]
lea edx, [ebp - 0x38]
push edx
push 0x1000
push 0x4bf5b0
lea edx, [ebp - 0x4c]
push edx
push eax
call dword [ecx + 0x2c]
test eax, eax
jl 0x41486e
cmp dword [ebp - 0x38], ebx
je 0x414860
mov dword [ebp - 0x3c], ebx
push 0x800
mov esi, 0x4be5b0
push esi
push 0xffffffffffffffff
push 0x4c4a60
push ebx
push 0xfde9
call fcn.004383d7
push 0x5c
push esi
mov edi, dword [sym.imp.MSVCR80.dll_wcsrchr]
call edi
pop ecx
pop ecx
cmp eax, ebx
jne 0x414329
push 0x3a
push esi
call edi
pop ecx
pop ecx
cmp eax, ebx
jne 0x414329
mov dword [ebp - 0x2c], esi
jmp 0x41432e
inc eax
inc eax
mov dword [ebp - 0x2c], eax
and dword [ebp - 0x20], ebx
mov esi, 0x447c50
mov edi, 0x4bd5b0
mov ebx, dword [sym.imp.MSVCR80.dll_sprintf_s]
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x38]
jae 0x414860
and dword [ebp - 0x3c], 0
lea eax, [eax*4 + 0x4bf5b0]
mov dword [ebp - 0x44], eax
mov eax, dword [0x4a7d94]
mov ecx, dword [eax]
lea edx, [ebp - 0x40]
push edx
lea edx, [ebp - 0x30]
push edx
lea edx, [ebp - 0x48]
push edx
lea edx, [ebp - 0x3c]
push edx
push 0x400
push dword [ebp - 0x2c]
mov edx, dword [ebp - 0x44]
push dword [edx]
push eax
call dword [ecx + 0x1c]
test eax, eax
jl 0x414858
push 0x401718
call fcn.004159a1
push eax
push 0x4c3638
push 0x402dac
push 0x20000
push esi
call ebx
add esp, 0x14
cmp dword [0x4c35b4], 0
je 0x414405
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4143b9
sub eax, edx
mov dword [ebp - 0x44], eax
mov eax, esi
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4143ca
sub eax, ecx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x20]
lea eax, [eax*4 + 0x4bf5b0]
push dword [eax]
push 0x4027fc
call fcn.00415a2e
push eax
mov eax, 0x20000
sub eax, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x24]
lea eax, [eax + 0x447c50]
push eax
call ebx
add esp, 0x10
mov eax, dword [ebp - 0x40]
and al, 7
cmp al, 1
jne 0x414428
push 0x402eb4
call fcn.004159a1
push eax
push 0x20000
push esi
call dword [sym.imp.MSVCR80.dll_strcat_s]
add esp, 0xc
mov eax, dword [ebp - 0x40]
and al, 7
cmp al, 2
jne 0x41444b
push 0x402f40
call fcn.004159a1
push eax
push 0x20000
push esi
call dword [sym.imp.MSVCR80.dll_strcat_s]
add esp, 0xc
mov eax, esi
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x414450
sub eax, ecx
lea eax, [eax + 0x447c50]
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x3c]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov word [eax + edx*2], cx
push ecx
push ecx
push 0x1000
push edi
push 0xffffffffffffffff
push eax
push ecx
push 0xfde9
call fcn.00438422
cmp dword [ebp - 0x24], 0x467c50
jb 0x414493
and dword [ebp - 0x44], 0
jmp 0x41449e
mov eax, 0x467c50
sub eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
push edi
call fcn.00415dc9
push eax
push dword [ebp - 0x44]
push dword [ebp - 0x24]
call dword [sym.imp.MSVCR80.dll_strcpy_s]
mov byte [ebp - 0x19], 0
push 0x3a
push edi
call dword [sym.imp.MSVCR80.dll_strchr]
add esp, 0x14
test eax, eax
je 0x4144db
mov byte [ebp - 0x19], 1
mov byte [eax], 0x21
push 0x3a
push eax
call dword [sym.imp.MSVCR80.dll_strchr]
pop ecx
pop ecx
test eax, eax
jne 0x4144c9
push 0x5c
push edi
call dword [sym.imp.MSVCR80.dll_strchr]
pop ecx
pop ecx
test eax, eax
je 0x414500
mov byte [ebp - 0x19], 1
mov byte [eax], 0x24
push 0x5c
push eax
call dword [sym.imp.MSVCR80.dll_strchr]
pop ecx
pop ecx
test eax, eax
jne 0x4144ee
push 0x2c
push edi
call dword [sym.imp.MSVCR80.dll_strchr]
pop ecx
pop ecx
test eax, eax
je 0x414525
mov byte [ebp - 0x19], 1
mov byte [eax], 0x26
push 0x2c
push eax
call dword [sym.imp.MSVCR80.dll_strchr]
pop ecx
pop ecx
test eax, eax
jne 0x414513
push 0x3b
push edi
call dword [sym.imp.MSVCR80.dll_strchr]
pop ecx
pop ecx
test eax, eax
je 0x41454a
mov byte [ebp - 0x19], 1
mov byte [eax], 0x40
push 0x3b
push eax
call dword [sym.imp.MSVCR80.dll_strchr]
pop ecx
pop ecx
test eax, eax
jne 0x414538
cmp byte [ebp - 0x19], 0
je 0x4145b4
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x414555
sub eax, edx
lea ecx, [eax + 0x447c50]
mov dword [ebp - 0x24], ecx
mov eax, 0x467c50
cmp ecx, eax
jb 0x414576
and dword [ebp - 0x44], 0
jmp 0x41457b
sub eax, ecx
mov dword [ebp - 0x44], eax
push edi
call fcn.00415dc9
push eax
push 0x401a10
call fcn.004159a1
push eax
push 0x402db4
push dword [ebp - 0x44]
push dword [ebp - 0x24]
call ebx
add esp, 0x14
push 0x400
push dword [ebp - 0x2c]
push 0xffffffffffffffff
push edi
push 0
push 0xfde9
call fcn.004383d7
push esi
push dword [ebp + 8]
call fcn.0040cba4
call fcn.00415457
push eax
push 0x4c3638
push 0x402c44
push 0x20000
push esi
call ebx
add esp, 0x14
push esi
push dword [ebp + 8]
call fcn.0040cba4
push 0x402c40
push 0x400
push 0x4c3638
call dword [sym.imp.MSVCR80.dll_strcat_s]
add esp, 0xc
push dword [ebp + 8]
mov eax, dword [ebp - 0x20]
lea eax, [eax*4 + 0x4bf5b0]
push dword [eax]
call fcn.0042b2be
cmp dword [ebp - 0x48], 0x26000000
jne 0x41480e
cmp dword [ebp - 0x34], 0
jne 0x41464e
lea eax, [ebp - 0x34]
push eax
mov eax, dword [0x4c5668]
push dword [eax + 0x18]
mov ecx, dword [0x4c4254]
call fcn.00415125
test eax, eax
jne 0x41464e
push 0x1b3
call fcn.0041f4d9
push eax
push dword [ebp + 8]
call fcn.0040d954
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x41481d
and dword [ebp - 0x58], 0
and dword [ebp - 4], 0
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax + ecx]
mov dword [ebp - 0x50], ecx
push ecx
push eax
push 0x4c3638
push 0x402f18
call fcn.00415a2e
push eax
push 0x20000
push esi
call ebx
add esp, 0x18
push esi
push dword [ebp + 8]
call fcn.0040cba4
test byte [0x4c5ee4], 4
jne 0x4147ba
cmp dword [0x4c5ef0], 0
je 0x4147ba
and dword [ebp - 0x28], 0
cmp dword [0x4c566c], 0
je 0x4146cd
push 0x402f10
push 0x4be5b0
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.MSVCR80.dll__wfopen_s]
jmp 0x4146fa
xor eax, eax
push eax
push eax
push 0x1000
push edi
push 0xffffffffffffffff
push 0x4be5b0
push eax
push dword [0x4c5efc]
call fcn.00438422
push 0x402f0c
push edi
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.MSVCR80.dll_fopen_s]
add esp, 0xc
cmp dword [ebp - 0x28], 0
je 0x4147ba
and dword [ebp - 0x54], 0
mov dword [ebp - 4], 1
push dword [ebp - 0x28]
push 1
push dword [ebp - 0x50]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
lea eax, [ecx + eax + 4]
push eax
call dword [sym.imp.MSVCR80.dll_fwrite]
add esp, 0x10
push edi
call fcn.00415dc9
push eax
push 0x4c3638
push 0x1ec
call fcn.0041f4d9
push eax
push 0x20000
push esi
call ebx
add esp, 0x14
push esi
call fcn.00415a2e
push eax
push dword [ebp + 8]
call fcn.0040cba4
jmp 0x4147ac
and dword [ebp - 4], 0
push dword [ebp - 0x28]
call dword [sym.imp.MSVCR80.dll_fclose]
pop ecx
mov dword [ebp - 4], 0xfffffffe
jmp 0x41481d
push dword [ebp + 8]
push esi
push dword [ebp - 0x30]
push dword [ebp - 0x48]
call fcn.00413967
mov eax, 0x4c3638
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x414825
sub eax, ecx
mov byte [eax + 0x4c3636], dl
call fcn.0041546b
push eax
push 0x4c3638
push 0x402c44
push 0x20000
push esi
call ebx
add esp, 0x14
push esi
push dword [ebp + 8]
call fcn.0040cba4
inc dword [ebp - 0x20]
jmp 0x414341
mov eax, dword [0x4a7d94]
mov ecx, dword [eax]
push dword [ebp - 0x4c]
push eax
call dword [ecx + 0x3c]
call fcn.0043f211
ret 4