Function at 0x2404250
Capabilities:
Write file on windows

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x24bec8b
push eax
mov eax, 0x143c
mov dword fs:[0], esp
call fcn.024adb70
push ebx
push ebp
push esi
mov esi, ecx
test esi, esi
push edi
mov ebp, edx
je 0x2404299
test ebp, ebp
je 0x2404299
mov edx, esi
mov ecx, 0x24e2604
call fcn.0247f900
test eax, eax
jne 0x24042b4
mov dword [0x24e2600], 0xc
xor eax, eax
mov ecx, dword [esp + 0x144c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1448
ret
push 3
push esi
mov ecx, 0x24e25d8
mov dword [0x24e260c], 3
call fcn.02406770
test eax, eax
je 0x2404299
lea ecx, [esp + 0x1c]
call fcn.0245db00
push esi
mov dword [esp + 0x1458], 0
call fcn.024adc6c
mov ebx, eax
add esp, 4
shl ebx, 1
je 0x2404336
lea ecx, [esp + 0x13c0]
call fcn.024017d0
push ebx
call fcn.024acf00
add esp, 4
test eax, eax
mov dword [esp + 0x13c4], eax
je 0x2404336
mov edi, eax
mov ecx, ebx
mov eax, ecx
shr ecx, 2
mov dword [esp + 0x13c0], ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 8
lea ecx, [esp + 0x20]
call fcn.0245de90
or ebx, 0xffffffff
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1454], ebx
call fcn.0245dcd0
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x24044a2
mov eax, dword [ebp]
test eax, eax
mov dword [ebp + 4], eax
je 0x24044a2
lea esi, [eax + 4]
test esi, esi
je 0x24044a2
mov ebx, dword [sym.imp.kernel32.dll_SetFilePointer]
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x14]
push edx
mov ecx, 0x24e25d8
mov dword [esp + 0x18], 0
call fcn.02407030
test eax, eax
je 0x240443d
mov eax, dword [esp + 0x10]
mov ecx, dword [0x24e25d8]
push 0
mov edi, eax
mov dword [0x24e25f0], eax
mov eax, dword [esp + 0x1c]
push 0
push eax
push ecx
call ebx
cmp eax, 0xffffffff
je 0x2404427
mov eax, dword [0x24e25d8]
push 0
lea edx, [esp + 0x18]
push edx
push 0xdea
push esi
push eax
mov dword [esp + 0x28], 0
call dword [sym.imp.kernel32.dll_WriteFile]
test eax, eax
je 0x2404433
cmp dword [esp + 0x14], 0xdea
jne 0x2404433
mov ecx, dword [esp + 0x10]
push 1
push ecx
mov ecx, 0x24e25d8
call fcn.02406a00
test eax, eax
je 0x240443d
mov dword [esi + 0xdde], edi
mov eax, dword [ebp + 4]
test eax, eax
je 0x240449f
mov eax, dword [eax]
test eax, eax
mov dword [ebp + 4], eax
je 0x240449f
lea esi, [eax + 4]
test esi, esi
je 0x240449f
jmp 0x2404373
mov dword [0x24e2600], 0xa
jmp 0x240443d
mov dword [0x24e2600], 4
mov eax, dword [0x24e25e4]
mov edx, dword [0x24e25e0]
mov dword [0x24e2614], eax
mov eax, dword [0x24e25d8]
cmp eax, 0xffffffff
mov dword [0x24e2610], edx
je 0x2404464
push eax
call dword [sym.imp.kernel32.dll_CloseHandle]
xor eax, eax
or edx, 0xffffffff
mov dword [0x24e25f8], eax
mov dword [0x24e25fc], eax
mov dword [0x24e25d8], edx
mov ecx, 6
mov edi, 0x24e25dc
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov ecx, 0x20
xor eax, eax
mov edi, 0x24e2620
mov dword [0x24e261c], edx
rep stosd dword es:[edi], eax
jmp 0x2404299
or ebx, 0xffffffff
mov eax, dword [0x24e25d8]
cmp eax, ebx
mov ecx, dword [0x24e25e0]
mov edx, dword [0x24e25e4]
mov dword [0x24e2610], ecx
mov dword [0x24e2614], edx
je 0x24044ca
push eax
call dword [sym.imp.kernel32.dll_CloseHandle]
xor eax, eax
mov dword [0x24e25f8], eax
mov dword [0x24e25fc], eax
mov dword [0x24e25d8], ebx
mov ecx, 6
mov edi, 0x24e25dc
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
xor eax, eax
mov ecx, 0x20
mov edi, 0x24e2620
mov dword [0x24e261c], ebx
rep stosd dword es:[edi], eax
mov eax, 1
jmp 0x240429b