Function at 0x1000d6b0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
mov edi, ecx
mov ebx, 0x32
mov ecx, dword [ebp + 0x10]
call sym.ScCore.dll_public:_void___thiscall_ScCore::String::erase_void_
mov eax, dword [edi + 4]
cmp dword [eax + 0x16], 0
je 0x1000d8c7
mov ebx, dword [eax + 0x12]
mov dword [ebp - 4], 0
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], ebx
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::getBinary_void_
mov esi, dword [ebp + 0xc]
cmp ebx, eax
mov ebx, dword [ebp + 8]
setne byte [ebp - 8]
cmp ebx, 0x7fffffff
jne 0x1000d707
test esi, esi
jne 0x1000d709
or ebx, 0xffffffff
or esi, ebx
test esi, esi
jg 0x1000d7ce
jl 0x1000d719
test ebx, ebx
jae 0x1000d7ce
mov eax, dword [ebp - 0xc]
push dword [eax + 0x16]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__ftelli64]
push 2
mov ebx, eax
mov dword [ebp - 0xc], edx
mov eax, dword [edi + 4]
push 0
push 0
push dword [eax + 0x16]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fseeki64]
add esp, 0x14
test eax, eax
jne 0x1000d7c0
mov eax, dword [edi + 4]
push dword [eax + 0x16]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__ftelli64]
mov esi, eax
mov eax, dword [ebp - 0xc]
push 0
push eax
mov eax, dword [edi + 4]
sub esi, ebx
push ebx
push dword [eax + 0x16]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fseeki64]
add esp, 0x14
test eax, eax
jne 0x1000d7c0
push esi
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
mov ebx, eax
mov eax, dword [edi + 4]
mov dword [ebp - 0xc], ebx
push dword [eax + 0x16]
push esi
push 1
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov esi, dword [ebp + 0x10]
mov ecx, eax
mov eax, dword [edi + 4]
add esp, 0x14
push dword [eax + 0x12]
push ecx
push ebx
mov ecx, esi
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
cmp byte [ebp - 8], 0
mov ebx, eax
je 0x1000d7b0
push 3
mov ecx, esi
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
push dword [ebp - 0xc]
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
add esp, 4
jmp 0x1000d87a
pop edi
pop esi
mov eax, 0x34
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 4]
test eax, eax
jle 0x1000d818
imul eax, ebx
push eax
mov dword [ebp - 0x10], eax
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
mov ecx, dword [edi + 4]
mov esi, eax
push dword [ecx + 0x16]
push dword [ebp - 0x10]
push 1
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov ecx, dword [edi + 4]
add esp, 0x14
push dword [ecx + 0x12]
mov ecx, dword [ebp + 0x10]
push eax
push esi
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
push esi
mov ebx, eax
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
add esp, 4
jmp 0x1000d877
test esi, esi
jl 0x1000d874
jg 0x1000d822
test ebx, ebx
je 0x1000d874
push dword [ebp - 8]
push dword [edi + 4]
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
add esp, 8
add ebx, 0xffffffff
adc esi, 0xffffffff
cmp eax, 0xffffffff
je 0x1000d874
mov ecx, dword [ebp + 0x10]
push eax
call sym.ScCore.dll_protected:_class_ScCore::Refcountable____thiscall_ScCore::WeakRefBase::assign_class_ScCore::Refcountable__
mov eax, dword [edi + 4]
push dword [eax + 0x16]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ferror]
add esp, 4
test eax, eax
jne 0x1000d874
mov eax, dword [edi + 4]
push dword [eax + 0x16]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
add esp, 4
test eax, eax
jne 0x1000d874
test esi, esi
jg 0x1000d822
jl 0x1000d874
test ebx, ebx
jne 0x1000d822
mov ebx, dword [ebp - 4]
mov esi, dword [ebp + 0x10]
mov eax, dword [edi + 4]
push dword [eax + 0x16]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ferror]
mov ecx, dword [edi + 4]
add esp, 4
mov ecx, dword [ecx + 0x16]
push ecx
test eax, eax
je 0x1000d8ad
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_clearerr]
add esp, 4
mov ebx, 0x34
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
add esp, 4
test eax, eax
je 0x1000d8c7
mov eax, dword [esi]
mov ecx, 0x33
cmp dword [eax], 0
cmove ebx, ecx
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret 0xc