Function at 0x425542
Capabilities:
Write file on windows

Disassembly:
cmp dword [0x469158], 0
push ebx
push esi
push edi
push ebp
jne 0x42555c
cmp dword [0x45c500], 0
jge 0x43cd91
cmp dword [0x4664c4], 1
mov eax, 1
jg 0x42556c
xor eax, eax
add eax, dword [0x466460]
jne 0x43cda3
cmp dword [0x45bfa4], 0
jne 0x43cdde
cmp dword [0x45c0ec], 0
jne 0x43cdba
xor ebx, ebx
test ebx, ebx
jne 0x43cde8
mov esi, dword [0x45c4ec]
test esi, esi
jne 0x43ce2b
push fcn.0042310b
xor edx, edx
mov ecx, dword [0x460a84]
call fcn.004254bf
push fcn.0042310b
xor edx, edx
mov ecx, dword [0x466150]
mov dword [0x45b5c4], eax
call fcn.004254bf
cmp dword [0x45c508], 0
mov dword [0x45b5c0], eax
je 0x4255f9
mov edi, dword [0x45c508]
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
mov word [0x45c0f4], cx
cmp dword [0x4662cc], 0
je 0x42562f
mov edi, dword [0x466318]
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
cmp dword [0x469158], 0
mov word [0x45c0f6], cx
jne 0x42562f
mov eax, dword [0x45b56c]
mov ecx, eax
mov ebp, dword [eax]
call dword [ebp + 0x40]
mov eax, dword [0x45c4e8]
push 0
xor eax, dword [0x45c764]
mov ebp, dword [sym.imp.MSVCRT40.dll_time]
and eax, 1
xor dword [0x45c764], eax
call ebp
add esp, 4
mov dword [0x45c760], eax
cmp dword [0x4662a8], 0
jne 0x43ce35
call fcn.00426177
push 0x45b580
mov eax, dword [0x4664d0]
mov ecx, eax
mov ebp, dword [eax]
call dword [ebp + 0x58]
test eax, eax
je 0x43ce4c
mov eax, dword [0x45b580]
mov ecx, dword [0x45b56c]
sub eax, 5
cmp eax, 1
sbb eax, eax
neg eax
push eax
call fcn.00407014
cmp dword [0x469158], 1
je 0x4256b1
cmp dword [0x46630c], 0
je 0x43cead
push 0
xor edx, edx
mov ecx, 0xc
call fcn.00422b51
mov ecx, dword [0x45c768]
call fcn.004259f0
mov eax, dword [0x466490]
mov ebp, dword [sym.imp.MSVCRT40.dll_fflush]
push eax
call ebp
add esp, 4
mov dword [0x469160], eax
cmp eax, 0xffffffff
je 0x43ce65
mov eax, dword [0x466490]
mov ebp, dword [sym.imp.MSVCRT40.dll_ftell]
push eax
call ebp
add esp, 4
mov dword [0x469160], eax
cmp eax, 0xffffffff
je 0x43ce89
push 0
mov edx, dword [0x466490]
mov ecx, dword [0x45c768]
mov dword [0x45c750], eax
call fcn.0042588c
movzx eax, ax
mov dword [0x45c74c], eax
call fcn.00406fe0
mov edi, dword [sym.imp.MSVCRT40.dll_fwrite]
mov dword [0x45c150], eax
mov eax, dword [0x466490]
push eax
push 0x408
push 1
push 0x45c0a8
call edi
add esp, 0x10
mov dword [0x469160], eax
cmp eax, 0xffffffff
je 0x43ceb8
mov eax, dword [0x466490]
push eax
push 0xb14
push 1
push 0x45b590
call edi
add esp, 0x10
mov eax, dword [0x466490]
mov ecx, dword [0x4662cc]
push eax
xor eax, eax
mov ax, word [0x45c0f6]
push eax
push 1
push ecx
call edi
add esp, 0x10
mov ecx, dword [0x466490]
xor eax, eax
push ecx
mov ax, word [0x45c0f4]
mov ecx, dword [0x45c508]
push eax
push 1
push ecx
call edi
add esp, 0x10
mov ecx, dword [0x466490]
push ecx
call ebp
add esp, 4
mov edx, eax
mov ecx, dword [0x45c4d0]
mov dword [0x45c754], eax
call fcn.0042543f
mov ecx, dword [0x466490]
mov ebp, dword [sym.imp.MSVCRT40.dll_rewind]
push ecx
call ebp
add esp, 4
mov ecx, dword [0x466490]
push ecx
push 1
push 0x68
push str.VCPCH0
call edi
add esp, 0x10
mov dword [0x469160], eax
cmp eax, 0xffffffff
je 0x43cedc
cmp dword [0x45c4c0], 0
je 0x42582d
push 0x104
mov eax, dword [0x45c4c0]
push eax
mov ebp, dword [sym.imp.MSVCRT40.dll_strncpy]
push 0x469024
call ebp
mov byte [0x469127], 0
add esp, 0xc
mov eax, dword [0x466490]
push eax
push 0x408
push 1
push 0x468d50
call edi
add esp, 0x10
mov eax, dword [0x466490]
mov dword [0x45c4dc], 1
push eax
mov ebp, dword [sym.imp.MSVCRT40.dll_fclose]
call ebp
add esp, 4
mov dword [0x469160], eax
cmp eax, 0xffffffff
je 0x43cf00
mov dword [0x45c790], 0
test ebx, ebx
jne 0x43cf24
test esi, esi
jne 0x43cf2e
pop ebp
pop edi
pop esi
pop ebx
ret
push 0x358
call fcn.00447247
add esp, 4
jmp 0x42555c
cmp dword [0x45c494], 0
jne 0x425887
call fcn.004487ea
pop ebp
pop edi
pop esi
pop ebx
ret
cmp dword [0x45c0f0], 0
jne 0x425592
mov edi, 0x45c27c
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x425592
mov ebx, 1
jmp 0x425594
push 0x45c27c
mov edx, dword [0x45c508]
mov ecx, dword [0x45c538]
call fcn.00446dac
mov edi, dword [0x45c538]
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
shr ecx, 2
mov esi, edi
mov edi, 0x45bfa8
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x42559c
call fcn.0043f99d
jmp 0x4255aa
push eax
mov ecx, dword [0x45c4d0]
push ecx
mov ecx, 0x4662a8
call fcn.0044dbed
jmp 0x425662
push 0x856
push str.pch.c
push 0x49
call fcn.004473a7
add esp, 0xc
jmp 0x425680
push 0x86d
mov eax, dword [0x45c4d0]
push str.pch.c
mov edx, 0x158
push eax
mov ecx, 0x58
call fcn.0044725e
jmp 0x4256e9
push 0x86e
mov eax, dword [0x45c4d0]
push str.pch.c
mov edx, 0x158
push eax
mov ecx, 0x57
call fcn.0044725e
jmp 0x425708
mov ebp, dword [sym.imp.MSVCRT40.dll_ftell]
jmp 0x425728
push 0x874
mov eax, dword [0x45c4d0]
push str.pch.c
mov edx, 0x158
push eax
mov ecx, 0x55
call fcn.0044725e
jmp 0x42575d
push 0x8a7
mov eax, dword [0x45c4d0]
push str.pch.c
mov edx, 0x158
push eax
mov ecx, 0x55
call fcn.0044725e
jmp 0x425802
push 0x8cd
mov eax, dword [0x45c4d0]
push str.pch.c
mov edx, 0x158
push eax
mov ecx, 0x52
call fcn.0044725e
jmp 0x42586d
call fcn.00446fa2
jmp 0x42587f
cmp dword [0x45c178], 0
jne 0x425887
mov dword [0x45b3d4], 7
mov dword [0x45b3d8], 0x456f30
mov ecx, 0xb
call fcn.0040341a
jmp 0x425887