Function at 0x10033b60
Capabilities:
Write file on windows

Disassembly:
push ecx
push esi
mov esi, ecx
test esi, esi
jne 0x10033b82
mov eax, dword [sym.imp.python310.dll_PyExc_ValueError]
push str.unrecognized_argument_value
push dword [eax]
call dword [sym.imp.python310.dll_PyErr_SetString]
add esp, 8
xor eax, eax
pop esi
pop ecx
ret
push ebx
push 0x101e5a14
push edx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov ebx, eax
add esp, 8
mov dword [esp + 8], ebx
test ebx, ebx
jne 0x10033bb7
mov eax, dword [sym.imp.python310.dll_PyExc_OSError]
push str.error_when_accessing_file
push dword [eax]
call dword [sym.imp.python310.dll_PyErr_SetString]
add esp, 8
xor eax, eax
pop ebx
pop esi
pop ecx
ret
mov ecx, 0x101e5264
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10033be0
test dl, dl
je 0x10033bdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10033be0
add eax, 2
add ecx, 2
test dl, dl
jne 0x10033bc0
xor eax, eax
jmp 0x10033be5
sbb eax, eax
or eax, 1
test eax, eax
je 0x10033c76
mov ecx, 0x101e1280
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10033c14
test dl, dl
je 0x10033c10
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10033c14
add eax, 2
add ecx, 2
test dl, dl
jne 0x10033bf4
xor eax, eax
jmp 0x10033c19
sbb eax, eax
or eax, 1
test eax, eax
je 0x10033c76
mov ecx, 0x101e14f8
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10033c44
test dl, dl
je 0x10033c40
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10033c44
add eax, 2
add ecx, 2
test dl, dl
jne 0x10033c24
xor eax, eax
jmp 0x10033c49
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10033c54
mov ecx, str.P6_n_d__d_n255_n
jmp 0x10033c7b
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov eax, dword [sym.imp.python310.dll_PyExc_ValueError]
push str.image_has_wrong_mode
push dword [eax]
call dword [sym.imp.python310.dll_PyErr_SetString]
add esp, 0xc
xor eax, eax
pop ebx
pop esi
pop ecx
ret
mov ecx, str.P5_n_d__d_n255_n
mov eax, dword [esi + 0x18]
push eax
mov eax, dword [esi + 0x14]
push eax
push ecx
push ebx
call fcn.10026880
add esp, 0x10
mov ecx, 0x101e5264
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10033cb4
test dl, dl
je 0x10033cb0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10033cb4
add eax, 2
add ecx, 2
test dl, dl
jne 0x10033c94
xor eax, eax
jmp 0x10033cb9
sbb eax, eax
or eax, 1
push ebp
push edi
test eax, eax
je 0x10033d42
mov ecx, 0x101e1280
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10033cf0
test dl, dl
je 0x10033cec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10033cf0
add eax, 2
add ecx, 2
test dl, dl
jne 0x10033cd0
xor eax, eax
jmp 0x10033cf5
sbb eax, eax
or eax, 1
test eax, eax
je 0x10033d42
xor ebp, ebp
cmp dword [esi + 0x18], ebp
jle 0x10033d67
mov eax, dword [esi + 0x14]
xor edi, edi
xor ebx, ebx
test eax, eax
jle 0x10033d36
nop dword [eax + eax]
push dword [esp + 0x10]
mov eax, dword [esi + 0x28]
push dword [esi + 0x10]
push 1
mov eax, dword [eax + ebp*4]
add eax, edi
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add edi, dword [esi + 0x34]
inc ebx
mov eax, dword [esi + 0x14]
add esp, 0x10
cmp ebx, eax
jl 0x10033d10
inc ebp
cmp ebp, dword [esi + 0x18]
jl 0x10033d03
mov ebx, dword [esp + 0x10]
jmp 0x10033d67
xor edi, edi
cmp dword [esi + 0x18], edi
jle 0x10033d67
mov ebp, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
nop
mov eax, dword [esi + 0x28]
push ebx
push dword [esi + 0x14]
push 1
push dword [eax + edi*4]
call ebp
inc edi
add esp, 0x10
cmp edi, dword [esi + 0x18]
jl 0x10033d50
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 4
mov eax, 1
pop edi
pop ebp
pop ebx
pop esi
pop ecx
ret