Function at 0x409de0
Capabilities:
Write file on windows

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x1c
mov eax, dword [0x429130]
mov ebp, dword [esp + 0x30]
test eax, eax
jne 0x40abc8
test ebp, ebp
je 0x409e0a
mov ebx, dword [0x429140]
test ebx, ebx
jne 0x40ab47
mov eax, dword [0x429cc0]
test eax, eax
je 0x409e90
mov eax, dword [0x42ab70]
test eax, eax
je 0x409e90
mov edx, dword [0x42eac0]
test edx, edx
je 0x40ab2a
mov edi, dword [0x429bb0]
test edi, edi
jne 0x409e42
mov ecx, dword [0x42a0f0]
test ecx, ecx
je 0x40aafe
mov dword [esp + 8], edx
mov dword [esp + 4], 0x409700
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov edx, dword [0x42ab70]
mov dword [esp], edx
call sub.msvcrt.dll_ferror
test eax, eax
je 0x40aad2
mov dword [esp], 0x409727
mov ebx, dword [0x42717c]
mov dword [esp + 4], ebx
call fcn.0040e550
lea esi, [esi]
lea edi, [edi]
mov eax, dword [0x42ead0]
test eax, eax
jne 0x409ea1
mov dword [esp], ebp
call sub.msvcrt.dll_exit
mov dword [esp + 0xc], str.2.5.4
mov ebx, dword [sym.imp.msvcrt.dll__iob]
mov esi, dword [0x427174]
mov dword [esp + 4], 0x409760
add ebx, 0x40
mov dword [esp + 8], esi
mov dword [esp], ebx
call sub.msvcrt.dll_fprintf
mov dword [esp + 8], 0x14
mov edx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 1
mov dword [esp], 0x409781
add edx, 0x40
mov dword [esp + 0xc], edx
call sub.msvcrt.dll_fwrite
mov ecx, dword [0x42bca0]
test ecx, ecx
je 0x409f20
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40aabd
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x2b
inc dword [edx + 0x40]
mov edx, dword [0x429cc0]
test edx, edx
je 0x409f4b
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40aaa8
mov esi, dword [edx + 0x40]
mov byte [esi], 0x62
inc dword [edx + 0x40]
mov edi, dword [0x42f8b0]
test edi, edi
je 0x409f76
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40aa93
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x64
inc dword [edx + 0x40]
mov edx, dword [0x42dd10]
test edx, edx
je 0x409fa1
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov esi, dword [ecx + 4]
dec esi
test esi, esi
mov dword [ecx + 4], esi
js 0x40aa7e
mov edi, dword [edx + 0x40]
mov byte [edi], 0x69
inc dword [edx + 0x40]
mov ebx, dword [0x42dda0]
test ebx, ebx
je 0x409fcc
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov esi, dword [ecx + 4]
dec esi
test esi, esi
mov dword [ecx + 4], esi
js 0x40aa69
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x6c
inc dword [edx + 0x40]
mov eax, dword [0x429c20]
test eax, eax
jle 0x409ffb
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40aa54
mov ebx, dword [edx + 0x40]
mov byte [ebx], 0x70
inc dword [edx + 0x40]
mov eax, dword [0x429c20]
dec eax
jle 0x40a01f
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov esi, dword [ecx + 4]
dec esi
test esi, esi
mov dword [ecx + 4], esi
js 0x40aa3f
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x70
inc dword [edx + 0x40]
mov edx, dword [0x42e260]
test edx, edx
je 0x40a04a
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40aa2a
mov ebx, dword [edx + 0x40]
mov byte [ebx], 0x73
inc dword [edx + 0x40]
mov esi, dword [0x42dd00]
test esi, esi
je 0x40a075
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40aa15
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x74
inc dword [edx + 0x40]
mov eax, dword [0x42ead0]
test eax, eax
je 0x40a09f
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40aa00
mov esi, dword [edx + 0x40]
mov byte [esi], 0x76
inc dword [edx + 0x40]
mov edx, dword [0x42f7c0]
test edx, edx
je 0x40a0ca
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40a9eb
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x77
inc dword [edx + 0x40]
mov eax, dword [0x42a9a0]
test eax, eax
jne 0x40a0f9
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40a9d6
mov esi, dword [edx + 0x40]
mov byte [esi], 0x42
inc dword [edx + 0x40]
mov eax, dword [0x42a9a0]
dec eax
je 0x40a99f
mov eax, dword [0x42eb50]
test eax, eax
jne 0x40a12a
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40a98a
mov esi, dword [edx + 0x40]
mov byte [esi], 0x4c
inc dword [edx + 0x40]
mov edx, dword [0x42dde0]
test edx, edx
je 0x40a155
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40a975
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x54
inc dword [edx + 0x40]
mov eax, dword [0x429c50]
cmp eax, 0xffffffff
je 0x40a960
add eax, 0xffffff80
je 0x40a934
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40a91f
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x38
inc dword [edx + 0x40]
mov dword [esp + 8], 3
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 1
mov dword [esp], 0x409796
add esi, 0x40
mov dword [esp + 0xc], esi
call sub.msvcrt.dll_fwrite
mov edx, dword [0x42ac50]
test edx, edx
je 0x40a1e1
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40a90a
mov ebx, dword [edx + 0x40]
mov byte [ebx], 0x61
inc dword [edx + 0x40]
mov ecx, dword [0x42a0f0]
test ecx, ecx
je 0x40a20c
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov esi, dword [ecx + 4]
dec esi
test esi, esi
mov dword [ecx + 4], esi
js 0x40a8f5
mov edi, dword [edx + 0x40]
mov byte [edi], 0x66
inc dword [edx + 0x40]
mov edx, dword [0x429bb0]
test edx, edx
je 0x40a237
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40a8e0
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x46
inc dword [edx + 0x40]
mov esi, dword [0x42a190]
test esi, esi
je 0x40a262
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40a8cb
mov ebx, dword [edx + 0x40]
mov byte [ebx], 0x65
inc dword [edx + 0x40]
mov eax, dword [0x42f370]
test eax, eax
je 0x40a28c
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov esi, dword [ecx + 4]
dec esi
test esi, esi
mov dword [ecx + 4], esi
js 0x40a8b6
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x6d
inc dword [edx + 0x40]
mov edx, dword [0x42ac40]
test edx, edx
je 0x40a2b7
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40a8a1
mov ebx, dword [edx + 0x40]
mov byte [ebx], 0x72
inc dword [edx + 0x40]
mov eax, dword [0x42aa10]
test eax, eax
jne 0x40a879
mov eax, dword [0x429150]
test eax, eax
jne 0x40a857
cld
mov ebx, dword [0x42ab90]
mov edi, 0x408d67
mov ecx, 3
mov esi, ebx
repe cmpsb byte [esi], byte es:[edi]
jne 0x40a835
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov ebx, dword [ecx + 4]
dec ebx
test ebx, ebx
mov dword [ecx + 4], ebx
js 0x40a820
mov esi, dword [edx + 0x40]
mov byte [esi], 0xa
inc dword [edx + 0x40]
mov dword [esp + 4], 0x40979a
mov edx, dword [sym.imp.msvcrt.dll__iob]
mov ebx, dword [0x429bc0]
mov edi, dword [0x42ea70]
add edx, 0x40
mov dword [esp], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 8], edi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x4097c0
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [0x42a100]
mov esi, dword [0x42dcf0]
mov ebx, dword [0x42abb0]
add edi, 0x40
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 8], ebx
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x4097df
mov edx, dword [0x429ad0]
mov eax, dword [0x42e270]
mov ecx, dword [sym.imp.msvcrt.dll__iob]
add edx, eax
dec edx
mov dword [esp + 8], edx
add ecx, 0x40
mov dword [esp], ecx
call sub.msvcrt.dll_fprintf
mov eax, dword [0x42eac0]
test eax, eax
je 0x40a7fa
mov ecx, dword [0x429bb0]
test ecx, ecx
jne 0x40a3c1
mov edx, dword [0x42a0f0]
test edx, edx
je 0x40a7c6
mov dword [esp + 8], eax
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x409800
add edi, 0x40
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
mov eax, dword [0x42f340]
test eax, eax
jne 0x40a798
mov dword [esp + 4], 0x409828
mov ebx, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [0x42eb00]
mov esi, dword [0x42dcd0]
add ebx, 0x40
mov dword [esp + 0xc], ecx
mov dword [esp + 8], esi
mov dword [esp], ebx
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409860
mov ecx, dword [sym.imp.msvcrt.dll__iob]
mov edi, dword [0x42ddd0]
mov edx, dword [0x42e250]
add ecx, 0x40
mov dword [esp], ecx
mov dword [esp + 0xc], edi
mov dword [esp + 8], edx
call sub.msvcrt.dll_fprintf
mov ecx, dword [0x42e280]
test ecx, ecx
jne 0x40a740
mov dword [esp + 8], 0x17
mov edx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 1
mov dword [esp], 0x40988f
add edx, 0x40
mov dword [esp + 0xc], edx
call sub.msvcrt.dll_fwrite
mov dword [esp + 4], 0x4098c0
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov edi, dword [0x42dd70]
add esi, 0x40
mov dword [esp + 8], edi
mov dword [esp], esi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409900
mov ecx, dword [sym.imp.msvcrt.dll__iob]
mov edx, dword [0x42dce0]
mov ebx, dword [0x42a1b0]
add ecx, 0x40
mov dword [esp + 0xc], edx
mov dword [esp + 8], ebx
mov dword [esp], ecx
call sub.msvcrt.dll_fprintf
mov eax, dword [0x42a0f0]
test eax, eax
je 0x40a607
mov dword [esp + 4], 0x409926
mov edx, dword [0x42ddb0]
mov ebx, dword [0x42abb0]
mov ecx, dword [sym.imp.msvcrt.dll__iob]
imul ebx, edx
add ecx, 0x40
mov dword [esp], ecx
mov dword [esp + 8], ebx
call sub.msvcrt.dll_fprintf
mov esi, dword [0x42a190]
test esi, esi
jne 0x40a5d3
mov esi, dword [0x42f370]
test esi, esi
jne 0x40a599
mov dword [esp + 4], 0x409940
mov edx, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [0x42aa00]
mov edi, dword [0x429c80]
mov esi, dword [0x42ea80]
add edx, 0x40
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], edi
mov dword [esp], edx
mov dword [esp + 8], esi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409980
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [0x42f8c0]
add edi, 0x40
mov dword [esp + 8], ecx
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
mov dword [esp + 8], ebx
mov ebx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x4099c0
add ebx, 0x40
mov dword [esp], ebx
call sub.msvcrt.dll_fprintf
jmp 0x409e99
mov dword [esp + 4], 0x409a00
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov esi, dword [0x42ddb0]
mov edx, dword [0x429c50]
mov ecx, dword [0x42a130]
add edi, 0x40
mov dword [esp], edi
add ebx, esi
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
call sub.msvcrt.dll_fprintf
jmp 0x40a51d
mov dword [esp + 4], 0x409a40
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov edx, dword [0x429c50]
mov ecx, dword [0x42ddb0]
add edi, 0x40
add ebx, edx
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
jmp 0x40a513
mov dword [esp + 4], 0x409a80
mov ebx, dword [0x42abb0]
mov edi, dword [0x42e240]
mov eax, dword [0x42f360]
mov esi, dword [sym.imp.msvcrt.dll__iob]
add edi, ebx
mov dword [esp + 8], edi
mov ecx, dword [0x42dcf0]
mov edx, edi
add edx, eax
add esi, 0x40
lea ebx, [edx + edx]
mov dword [esp + 0xc], ecx
mov dword [esp], esi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409ac0
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov edx, dword [0x42a9c0]
mov ecx, dword [0x42ac20]
mov edi, dword [0x42f360]
add esi, 0x40
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edi
mov dword [esp], esi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409b00
mov esi, dword [0x42e240]
mov eax, dword [0x42ddb0]
mov edi, dword [0x42a130]
mov edx, esi
mov ecx, dword [0x42abd0]
imul edx, eax
imul esi, edi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov edx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
add edx, 0x40
mov dword [esp], edx
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409b34
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [0x42dd90]
add edi, 0x40
mov dword [esp + 8], ecx
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409b4e
mov edx, dword [sym.imp.msvcrt.dll__iob]
mov esi, dword [0x42a9d0]
add edx, 0x40
mov dword [esp + 8], esi
mov dword [esp], edx
call sub.msvcrt.dll_fprintf
mov dword [esp + 4], 0x409b80
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [0x42dd50]
mov edi, dword [0x42e240]
add esi, 0x40
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edi
mov dword [esp], esi
call sub.msvcrt.dll_fprintf
jmp 0x40a505
mov edi, dword [0x429bf0]
mov esi, dword [0x42a9b0]
mov ebx, dword [0x42ab60]
mov dword [esp + 0x18], edi
mov edx, dword [0x42e230]
mov dword [esp + 0x14], esi
mov edi, dword [ebx + ecx*4]
mov esi, dword [edx + ecx*4]
mov dword [esp + 8], ecx
mov ebx, dword [0x42ab00]
mov dword [esp + 4], 0x409bc0
add esi, edi
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], ebx
add edi, 0x40
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
jmp 0x40a47c
mov dword [esp + 8], 0x22
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 1
mov dword [esp], 0x409c20
add esi, 0x40
mov dword [esp + 0xc], esi
call sub.msvcrt.dll_fwrite
jmp 0x40a3eb
mov dword [esp + 8], 0x23
mov ebx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 1
mov dword [esp], 0x409c60
add ebx, 0x40
mov dword [esp + 0xc], ebx
lea esi, [esi]
call sub.msvcrt.dll_fwrite
jmp 0x40a3de
mov dword [esp + 8], 0x10
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 1
mov dword [esp], 0x409c84
add esi, 0x40
mov dword [esp + 0xc], esi
jmp 0x40a7f0
mov dword [esp + 4], ecx
mov dword [esp], 0xa
call sub.msvcrt.dll__flsbuf
jmp 0x40a30d
mov dword [esp + 8], ebx
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x409c95
add edi, 0x40
mov dword [esp], edi
call sub.msvcrt.dll_fprintf
jmp 0x40a2ec
mov dword [esp + 8], eax
mov edx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x409c9b
add edx, 0x40
mov dword [esp], edx
call sub.msvcrt.dll_fprintf
jmp 0x40a2d1
mov dword [esp + 4], 0x409ca1
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [0x42913c]
add esi, 0x40
mov dword [esp + 8], ecx
mov dword [esp], esi
call sub.msvcrt.dll_fprintf
jmp 0x40a2c4
mov dword [esp + 4], ecx
mov dword [esp], 0x72
call sub.msvcrt.dll__flsbuf
jmp 0x40a2b7
mov dword [esp + 4], ecx
mov dword [esp], 0x6d
call sub.msvcrt.dll__flsbuf
jmp 0x40a28c
mov dword [esp + 4], ecx
mov dword [esp], 0x65
call sub.msvcrt.dll__flsbuf
jmp 0x40a262
mov dword [esp + 4], ecx
mov dword [esp], 0x46
call sub.msvcrt.dll__flsbuf
jmp 0x40a237
mov dword [esp + 4], ecx
mov dword [esp], 0x66
call sub.msvcrt.dll__flsbuf
jmp 0x40a20c
mov dword [esp + 4], ecx
mov dword [esp], 0x61
call sub.msvcrt.dll__flsbuf
jmp 0x40a1e1
mov dword [esp + 4], ecx
mov dword [esp], 0x38
call sub.msvcrt.dll__flsbuf
jmp 0x40a18d
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov esi, dword [ecx + 4]
dec esi
test esi, esi
mov dword [ecx + 4], esi
js 0x40a953
mov edi, dword [edx + 0x40]
mov byte [edi], 0x37
jmp 0x40a18a
mov dword [esp + 4], ecx
mov dword [esp], 0x37
jmp 0x40a92a
mov ebx, 0x100
mov eax, 0x100
mov dword [0x429c50], ebx
jmp 0x40a163
mov dword [esp + 4], ecx
mov dword [esp], 0x54
call sub.msvcrt.dll__flsbuf
jmp 0x40a155
mov dword [esp + 4], ecx
mov dword [esp], 0x4c
call sub.msvcrt.dll__flsbuf
jmp 0x40a12a
mov edx, dword [sym.imp.msvcrt.dll__iob]
lea ecx, [edx + 0x40]
mov edi, dword [ecx + 4]
dec edi
test edi, edi
mov dword [ecx + 4], edi
js 0x40a9c1
mov ecx, dword [edx + 0x40]
mov byte [ecx], 0x49
inc dword [edx + 0x40]
jmp 0x40a100
mov dword [esp + 4], ecx
mov dword [esp], 0x49
call sub.msvcrt.dll__flsbuf
jmp 0x40a100
mov dword [esp + 4], ecx
mov dword [esp], 0x42
call sub.msvcrt.dll__flsbuf
jmp 0x40a0f4
mov dword [esp + 4], ecx
mov dword [esp], 0x77
call sub.msvcrt.dll__flsbuf
jmp 0x40a0ca
mov dword [esp + 4], ecx
mov dword [esp], 0x76
call sub.msvcrt.dll__flsbuf
jmp 0x40a09f
mov dword [esp + 4], ecx
mov dword [esp], 0x74
call sub.msvcrt.dll__flsbuf
jmp 0x40a075
mov dword [esp + 4], ecx
mov dword [esp], 0x73
call sub.msvcrt.dll__flsbuf
jmp 0x40a04a
mov dword [esp + 4], ecx
mov dword [esp], 0x70
call sub.msvcrt.dll__flsbuf
jmp 0x40a01f
mov dword [esp + 4], ecx
mov dword [esp], 0x70
call sub.msvcrt.dll__flsbuf
jmp 0x409ff6
mov dword [esp + 4], ecx
mov dword [esp], 0x6c
call sub.msvcrt.dll__flsbuf
jmp 0x409fcc
mov dword [esp + 4], ecx
mov dword [esp], 0x69
call sub.msvcrt.dll__flsbuf
jmp 0x409fa1
mov dword [esp + 4], ecx
mov dword [esp], 0x64
call sub.msvcrt.dll__flsbuf
jmp 0x409f76
mov dword [esp + 4], ecx
mov dword [esp], 0x62
call sub.msvcrt.dll__flsbuf
jmp 0x409f4b
mov dword [esp + 4], ecx
mov dword [esp], 0x2b
call sub.msvcrt.dll__flsbuf
jmp 0x409f20
mov esi, dword [0x42ab70]
mov dword [esp], esi
call sub.msvcrt.dll_fclose
test eax, eax
je 0x409e90
mov dword [esp], 0x409ca7
mov edi, dword [0x42717c]
mov dword [esp + 4], edi
jmp 0x409e7d
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x22
mov dword [esp + 4], 1
mov dword [esp], 0x409ce0
lea esi, [esi]
call sub.msvcrt.dll_fwrite
jmp 0x409e56
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xf
mov dword [esp + 4], 1
mov dword [esp], 0x409d03
jmp 0x40ab20
mov esi, dword [sym.imp.msvcrt.dll__iob]
add esi, 0x20
mov dword [esp], esi
call sub.msvcrt.dll_ferror
test eax, eax
je 0x40ab77
mov dword [esp], 0x409d13
mov edi, dword [0x42913c]
mov dword [esp + 4], edi
call fcn.0040e550
jmp 0x409e0a
mov edx, dword [sym.imp.msvcrt.dll__iob]
add edx, 0x20
mov dword [esp], edx
call sub.msvcrt.dll_fclose
test eax, eax
je 0x40ab9f
mov dword [esp], 0x409d30
mov ecx, dword [0x42913c]
mov dword [esp + 4], ecx
jmp 0x40ab6d
mov ebx, dword [0x42913c]
mov dword [esp], ebx
call fcn.00426300
test eax, eax
je 0x409e0a
mov dword [esp], 0x409d4d
mov esi, dword [0x42913c]
mov dword [esp + 4], esi
jmp 0x40ab6d
mov dword [esp], eax
call sub.msvcrt.dll_ferror
test eax, eax
je 0x40abf0
mov dword [esp], 0x409d80
mov edx, dword [0x429150]
mov dword [esp + 4], edx
call fcn.0040e550
jmp 0x409df8
mov edx, dword [0x429130]
mov dword [esp], edx
call sub.msvcrt.dll_fclose
test eax, eax
je 0x409df8
mov dword [esp], 0x409dc0
mov ecx, dword [0x429150]
mov dword [esp + 4], ecx
jmp 0x40abe5