Function at 0x404211
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xf48
mov eax, dword [0x485008]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
xor edi, edi
mov dword [ebp - 0xeb0], edx
push edi
push edi
push 0x1004
mov esi, ecx
push edx
mov dword [ebp - 0xea0], esi
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
jne 0x404290
push ebx
lea eax, [ebp - 0x8c]
push str.List__s_doesnt_contain_any_text
push eax
call fcn.00401468
add esp, 0xc
lea ecx, [ebp - 0x8c]
call fcn.004019d7
lea ecx, [ebp - 0x8c]
call fcn.00401a3b
push edi
push 0x46e060
lea eax, [ebp - 0x8c]
push eax
push esi
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40470e
push 0x10
pop ecx
mov esi, str.Log_File__UNICODE___.txt_
lea edi, [ebp - 0x294]
rep movsd dword es:[edi], dword [esi]
push 0x3e
lea eax, [ebp - 0x252]
movsw word es:[edi], word [esi]
xor edi, edi
push edi
push eax
call fcn.00447370
add esp, 0xc
lea eax, [ebp - 0x214]
push 0x104
push edi
push eax
call fcn.00447370
lea ecx, [ebp - 0x10c]
add esp, 0xc
sub ecx, ebx
mov al, byte [ebx]
mov byte [ecx + ebx], al
inc ebx
test al, al
jne 0x4042d3
lea ecx, [ebp - 0x10c]
call fcn.004019d7
lea ecx, [ebp - 0x10c]
call fcn.00401a3b
push edi
call fcn.0044da37
pop ecx
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0xea8], edx
push 0x80
push ecx
mov edx, eax
xor ecx, ecx
call fcn.00402046
push eax
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x214]
push 0x46eb9c
push eax
call fcn.00401468
lea ecx, [ebp - 0x214]
add esp, 0x18
mov edx, edi
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40433c
sub ecx, esi
je 0x404391
mov al, byte [ebp + edx - 0x214]
cmp al, 0x5c
je 0x404372
cmp al, 0x2f
je 0x404372
cmp al, 0x3a
je 0x404372
cmp al, 0x2a
je 0x404372
cmp al, 0x3f
je 0x404372
cmp al, 0x22
je 0x404372
cmp al, 0x3c
je 0x404372
cmp al, 0x3e
je 0x404372
cmp al, 0x7c
jne 0x40437a
mov byte [ebp + edx - 0x214], 0x20
lea ecx, [ebp - 0x214]
inc edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x404384
sub ecx, esi
cmp edx, ecx
jb 0x404347
push 0x58
pop esi
push esi
lea eax, [ebp - 0xf44]
push edi
push eax
call fcn.00447370
mov edi, dword [ebp - 0xea0]
lea eax, [ebp - 0x294]
add esp, 0xc
mov dword [ebp - 0xf38], eax
lea eax, [ebp - 0x214]
mov dword [ebp - 0xf44], esi
mov dword [ebp - 0xf28], eax
lea eax, [ebp - 0xf44]
mov dword [ebp - 0xf40], edi
push 2
pop esi
push eax
mov dword [ebp - 0xf08], 0x46eba4
mov dword [ebp - 0xf24], 0x104
mov dword [ebp - 0xf14], str.Save_Log
mov dword [ebp - 0xf10], esi
call dword [sym.imp.COMDLG32.dll_GetSaveFileNameA]
test eax, eax
je 0x40470e
xor ebx, ebx
lea eax, [ebp - 0x214]
cmp dword [ebp - 0xf2c], esi
push 0x46ebf8
push eax
sete bl
call fcn.0044a0f7
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x404440
push eax
push 0x46e060
push 0x46ebfc
push edi
jmp 0x404285
test ebx, ebx
je 0x404553
mov ebx, dword [ebp - 0xeb0]
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push eax
push eax
push 0x1004
push ebx
mov dword [ebp - 0xe98], eax
call edi
test eax, eax
jle 0x404707
mov ecx, dword [ebp - 0xe98]
and dword [ebp - 0xee4], 0
lea eax, [ebp - 0x894]
mov dword [ebp - 0xed8], eax
lea eax, [ebp - 0xeec]
push eax
push ecx
push 0x102d
push ebx
mov dword [ebp - 0xed4], 0x200
call edi
lea eax, [ebp - 0x694]
mov dword [ebp - 0xee4], 1
mov dword [ebp - 0xed8], eax
lea eax, [ebp - 0xeec]
push eax
push dword [ebp - 0xe98]
mov dword [ebp - 0xed4], 0x200
push 0x102d
push ebx
call edi
lea eax, [ebp - 0x494]
mov dword [ebp - 0xee4], 2
mov dword [ebp - 0xed8], eax
lea eax, [ebp - 0xeec]
push eax
push dword [ebp - 0xe98]
mov dword [ebp - 0xed4], 0x200
push 0x102d
push ebx
call edi
lea eax, [ebp - 0x494]
push eax
lea eax, [ebp - 0x694]
push eax
lea eax, [ebp - 0x894]
push eax
push str._s_t_s_t_s_r_n
push esi
call fcn.004013bc
add esp, 0x14
inc dword [ebp - 0xe98]
push 0
push 0
push 0x1004
push ebx
call edi
mov ecx, dword [ebp - 0xe98]
cmp ecx, eax
jl 0x404474
jmp 0x404707
push esi
push 1
lea eax, [ebp - 0xe98]
mov word [ebp - 0xe98], 0xfeff
push 2
push eax
mov word [ebp - 0xe9c], 9
xor ebx, ebx
mov dword [ebp - 0xea0], 0xa000d
call fcn.0044d8c1
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
add esp, 0x10
mov dword [ebp - 0xea8], ebx
push ebx
push ebx
mov ebx, dword [ebp - 0xeb0]
push 0x1004
push ebx
call edi
test eax, eax
jle 0x404707
push 0x3c
lea eax, [ebp - 0xeec]
push 0
push eax
call fcn.00447370
and dword [ebp - 0xee4], 0
lea eax, [ebp - 0xe94]
add esp, 0xc
mov dword [ebp - 0xed8], eax
lea eax, [ebp - 0xeec]
mov dword [ebp - 0xed4], 0x400
push eax
push dword [ebp - 0xea8]
push 0x1073
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp - 0xa94]
mov dword [ebp - 0xee4], 1
mov dword [ebp - 0xed8], eax
lea eax, [ebp - 0xeec]
push eax
push dword [ebp - 0xea8]
push 0x1073
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp - 0x694]
mov dword [ebp - 0xee4], 2
mov dword [ebp - 0xed8], eax
lea eax, [ebp - 0xeec]
push eax
push dword [ebp - 0xea8]
push 0x1073
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
push 1
lea eax, [ebp - 0xe94]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, eax
push eax
lea eax, [ebp - 0xe94]
push eax
call fcn.0044d8c1
push esi
push 1
lea eax, [ebp - 0xe9c]
push 2
push eax
call fcn.0044d8c1
add esp, 0x20
lea eax, [ebp - 0xa94]
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, eax
push eax
lea eax, [ebp - 0xa94]
push eax
call fcn.0044d8c1
push esi
push 1
lea eax, [ebp - 0xe9c]
push 2
push eax
call fcn.0044d8c1
add esp, 0x20
lea eax, [ebp - 0x694]
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, eax
push eax
lea eax, [ebp - 0x694]
push eax
call fcn.0044d8c1
push esi
push 1
push 4
lea eax, [ebp - 0xea0]
push eax
call fcn.0044d8c1
add esp, 0x20
inc dword [ebp - 0xea8]
push 0
push 0
push 0x1004
push ebx
call edi
cmp dword [ebp - 0xea8], eax
jl 0x4045a9
push esi
call fcn.0044a2d1
pop ecx
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00445b7e
leave
ret