Function at 0x421cb0
Capabilities:
Delete file
Write file on windows

Disassembly:
push ebp
mov eax, sym.___gxx_personality_sj0
mov ebp, esp
push edi
lea ecx, [ebp - 0x27c]
mov edi, 0x5202ee
push esi
lea esi, [ebp - 0x18]
push ebx
sub esp, 0x28c
mov ebx, 0x421ec0
mov dword [esp], ecx
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x260], edi
mov edi, 0x53238c
mov dword [ebp - 0x25c], esi
lea esi, [ebp - 0x118]
mov dword [ebp - 0x258], ebx
mov ebx, 0xffffffff
mov dword [ebp - 0x254], esp
call sym.__Unwind_SjLj_Register
mov dword [esp + 4], edi
mov eax, dword [str.._data]
mov edx, str.tide.idx
mov dword [esp + 0xc], edx
mov dword [esp], esi
mov dword [esp + 8], eax
mov dword [ebp - 0x278], ebx
call sym._sprintf
lea ecx, [ebp - 0x118]
mov dword [esp], ecx
call method.c_FileManager.CloseFile_char_
mov dword [esp], 0x55e928
mov edx, 0x55e928
mov dword [ebp - 0x128], edx
call sub.KERNEL32.dll_EnterCriticalSection
mov eax, dword [0x561f50]
sub esp, 4
test eax, eax
je 0x421ea2
mov eax, dword [0x563540]
test eax, eax
je 0x421e70
cmp eax, dword [0x561f50]
je 0x421dc6
lea esi, [ebp - 0x118]
mov ebx, 2
mov dword [esp], esi
mov dword [ebp - 0x278], ebx
call sym._remove
mov dword [esp], 0
xor edx, edx
xor eax, eax
mov dword [esp + 0xc], edx
mov edi, 0x8b
mov dword [esp + 8], eax
mov dword [esp + 4], edi
call sym.SendDataToPush_char__unsigned_char__unsigned_int__unsigned_short_
mov ebx, dword [0x563540]
xor ecx, ecx
mov dword [0x561f60], ecx
mov dword [0x561f50], ebx
mov dword [esp], 0x56326c
mov esi, 2
mov dword [ebp - 0x278], esi
call method.c_String.AsString__
mov dword [esp + 8], eax
mov edx, dword [0x561f50]
mov eax, str._stide_d.idx
mov dword [esp + 4], eax
lea edi, [ebp - 0x238]
mov dword [esp], edi
mov dword [esp + 0xc], edx
call sym._sprintf
lea ecx, [ebp - 0x248]
mov dword [esp], ecx
call fcn.004041c0
lea edi, [ebp - 0x238]
mov ebx, 1
lea esi, [ebp - 0x248]
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [ebp - 0x278], ebx
call method.c_Fbuf.copydata_char_const_
mov eax, 0x38e38e39
mul dword [ebp - 0x244]
mov eax, dword [0x561f60]
shr edx, 3
cmp edx, eax
ja 0x421f20
lea edx, [ebp - 0x248]
mov dword [esp], edx
mov ebx, 2
mov dword [ebp - 0x278], ebx
call sym.c_Fbuf::c_Fbuf__
mov esi, esi
lea edi, [edi]
mov esi, dword [ebp - 0x128]
mov ebx, 0xffffffff
mov dword [ebp - 0x278], ebx
mov dword [esp], esi
call sub.KERNEL32.dll_LeaveCriticalSection
sub esp, 4
lea ecx, [ebp - 0x27c]
mov dword [esp], ecx
call sym.__Unwind_SjLj_Unregister
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea ecx, [ebp - 0x118]
mov edx, 2
mov dword [esp], ecx
mov dword [ebp - 0x278], edx
call sym._remove
jmp 0x421d63
mov dword [ebp - 0x280], edx
lea ebx, [eax + eax*8]
mov ecx, dword [ebp - 0x248]
sub dword [ebp - 0x280], eax
shl ebx, 2
xor edx, edx
mov dword [esp + 0xc], edx
add ebx, ecx
mov esi, 0x8c
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x280]
mov ecx, 1
mov dword [esp], ebx
mov dword [ebp - 0x278], ecx
lea edi, [eax + eax*8]
shl edi, 2
mov dword [esp + 8], edi
call sym.SendDataToPush_char__unsigned_char__unsigned_int__unsigned_short_
mov esi, 0x532392
lea ebx, [ebp - 0x118]
mov dword [esp + 4], esi
mov dword [esp], ebx
call sym._fopen
mov dword [ebp - 0x284], eax
mov edi, dword [ebp - 0x248]
mov edx, 1
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x244]
mov ecx, dword [ebp - 0x284]
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 0xc], ecx
call sym._fwrite
mov ebx, dword [ebp - 0x284]
mov dword [esp], ebx
call sym._fclose
mov ecx, dword [ebp - 0x280]
lea edx, [ebp - 0x248]
add dword [0x561f60], ecx
mov dword [esp], edx
jmp 0x421e57