Function at 0x41a0e0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x5260
call fcn.0043faf0
mov eax, dword [0x46c99c]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x5258], ecx
mov eax, dword [ebp - 0x5258]
cmp dword [eax + 0x10], 0
jne 0x41a110
xor eax, eax
jmp 0x41a3bb
cmp dword [ebp + 8], 0
jne 0x41a122
mov ecx, dword [ebp - 0x5258]
add ecx, 0x14
mov dword [ebp + 8], ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x5258]
call fcn.0041a540
test eax, eax
jne 0x41a13c
xor eax, eax
jmp 0x41a3bb
lea eax, [ebp - 0x5248]
push eax
mov ecx, dword [ebp - 0x5258]
call fcn.00419f90
lea ecx, [ebp - 0x5248]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
movsx edx, byte [ebp + eax - 0x5249]
cmp edx, 0x5c
jne 0x41a172
mov eax, 1
jmp 0x41a3bb
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x5258]
add ecx, 0x119
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edx, dword [ebp - 0x5258]
add edx, 0x119
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [ebp - 0x5258]
movsx edx, byte [ecx + eax + 0x118]
cmp edx, 0x5c
je 0x41a1c6
push 0x45acb0
mov eax, dword [ebp - 0x5258]
add eax, 0x119
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp dword [ebp + 0xc], 0
je 0x41a203
push 0x5c
lea ecx, [ebp - 0x5248]
push ecx
call fcn.0041a790
add esp, 8
mov dword [ebp - 0x5250], eax
cmp dword [ebp - 0x5250], 0
je 0x41a203
mov edx, dword [ebp - 0x5250]
add edx, 1
push edx
lea eax, [ebp - 0x5248]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x5248]
push ecx
mov edx, dword [ebp - 0x5258]
add edx, 0x119
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [ebp - 0x5258]
add eax, 0x119
push eax
mov ecx, dword [ebp - 0x5258]
call fcn.0041a600
test eax, eax
jne 0x41a23f
xor eax, eax
jmp 0x41a3bb
mov ecx, dword [ebp - 0x5028]
mov dword [ebp - 0x5260], ecx
mov dword [ebp - 0x525c], 0
fild qword [ebp - 0x5260]
mov edx, dword [ebp - 0x5258]
fstp dword [edx + 8]
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
mov eax, dword [ebp - 0x5258]
add eax, 0x119
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x524c], eax
cmp dword [ebp - 0x524c], 0xffffffff
jne 0x41a29e
xor eax, eax
jmp 0x41a3bb
mov ecx, dword [ebp - 0x5258]
mov edx, dword [ecx + 0x10]
push edx
call fcn.0041b920
test eax, eax
je 0x41a2b8
xor eax, eax
jmp 0x41a3bb
mov dword [ebp - 0x500c], 0
push 0x5000
lea eax, [ebp - 0x5008]
push eax
mov ecx, dword [ebp - 0x5258]
mov edx, dword [ecx + 0x10]
push edx
call fcn.0041b290
mov dword [ebp - 0x500c], eax
cmp dword [ebp - 0x500c], 0
jle 0x41a35f
mov dword [ebp - 0x5254], 0
push 0
lea eax, [ebp - 0x5254]
push eax
mov ecx, dword [ebp - 0x500c]
push ecx
lea edx, [ebp - 0x5008]
push edx
mov eax, dword [ebp - 0x524c]
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x41a32c
mov ecx, dword [ebp - 0x5254]
cmp ecx, dword [ebp - 0x500c]
je 0x41a338
mov dword [ebp - 0x500c], 0xffffffff
jmp 0x41a36c
fild dword [ebp - 0x500c]
mov edx, dword [ebp - 0x5258]
fdiv dword [edx + 8]
fmul qword [0x45aaf8]
mov eax, dword [ebp - 0x5258]
fadd dword [eax + 4]
mov ecx, dword [ebp - 0x5258]
fstp dword [ecx + 4]
cmp dword [ebp - 0x500c], 0
jg 0x41a2c2
mov edx, dword [ebp - 0x524c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x5258]
mov ecx, dword [eax + 0x10]
push ecx
call fcn.0041b490
cmp dword [ebp - 0x500c], 0
jne 0x41a3af
mov edx, dword [ebp - 0x5030]
push edx
mov eax, dword [ebp - 0x5258]
add eax, 0x119
push eax
mov ecx, dword [ebp - 0x5258]
call fcn.0041a660
xor eax, eax
cmp dword [ebp - 0x500c], 0
sete al
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0043d4c7
mov esp, ebp
pop ebp
ret 8