Function at 0x1000d700
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 + 0x18], 0
je 0x1000d843
mov ebx, dword [eax + 0x14]
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ebx
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::getBinary_void_
mov esi, dword [ebp + 8]
cmp ebx, eax
mov ebx, dword [ebp + 0xc]
setne byte [ebp - 8]
cmp esi, 0x7fffffff
jne 0x1000d756
test ebx, ebx
je 0x1000d84e
test ebx, ebx
jl 0x1000d84e
jg 0x1000d768
test esi, esi
jb 0x1000d84e
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 4]
test eax, eax
jle 0x1000d7b4
imul eax, esi
push eax
mov dword [ebp - 0xc], eax
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
mov esi, eax
mov eax, dword [edi + 4]
push dword [eax + 0x18]
push dword [ebp - 0xc]
push 1
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov ecx, eax
add esp, 0x14
mov eax, dword [edi + 4]
push dword [eax + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push esi
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
push esi
mov ebx, eax
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
add esp, 4
jmp 0x1000d815
test ebx, ebx
jl 0x1000d812
jg 0x1000d7c0
test esi, esi
je 0x1000d812
nop
push dword [ebp - 8]
push dword [edi + 4]
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
add esp, 8
add esi, 0xffffffff
adc ebx, 0xffffffff
cmp eax, 0xffffffff
je 0x1000d812
mov ecx, dword [ebp + 0x10]
push eax
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
mov eax, dword [edi + 4]
push dword [eax + 0x18]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ferror]
add esp, 4
test eax, eax
jne 0x1000d812
mov eax, dword [edi + 4]
push dword [eax + 0x18]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
add esp, 4
test eax, eax
jne 0x1000d812
test ebx, ebx
jg 0x1000d7c0
jl 0x1000d812
test esi, esi
jne 0x1000d7c0
mov ebx, dword [ebp - 4]
mov esi, dword [ebp + 0x10]
mov eax, dword [edi + 4]
push dword [eax + 0x18]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ferror]
mov ecx, dword [edi + 4]
add esp, 4
push dword [ecx + 0x18]
test eax, eax
je 0x1000d8fc
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_clearerr]
add esp, 4
mov ebx, 0x34
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp - 0x10]
push dword [eax + 0x18]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__ftelli64]
mov ecx, dword [edi + 4]
mov ebx, eax
push 2
push 0
push 0
push dword [ecx + 0x18]
mov dword [ebp - 0x10], edx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fseeki64]
add esp, 0x14
test eax, eax
jne 0x1000d925
mov eax, dword [edi + 4]
push dword [eax + 0x18]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__ftelli64]
mov esi, eax
mov eax, dword [ebp - 0x10]
push 0
sub esi, ebx
push eax
sbb edx, eax
mov eax, dword [edi + 4]
push ebx
mov dword [ebp - 0x10], edx
push dword [eax + 0x18]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fseeki64]
add esp, 0x14
test eax, eax
jne 0x1000d925
push esi
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
mov ecx, dword [edi + 4]
mov ebx, eax
mov dword [ebp - 0x10], ebx
push dword [ecx + 0x18]
push esi
push 1
push ebx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov ecx, dword [edi + 4]
add esp, 0x14
mov esi, dword [ebp + 0x10]
push dword [ecx + 0x14]
mov ecx, esi
push eax
push ebx
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
cmp byte [ebp - 8], 0
mov ebx, eax
je 0x1000d8ec
push 3
mov ecx, esi
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
push dword [ebp - 0x10]
call sym.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::get_unsigned_short_int_const__
add esp, 4
jmp 0x1000d818
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
add esp, 4
test eax, eax
je 0x1000d843
mov eax, dword [esi]
mov ecx, 0x33
pop edi
pop esi
cmp dword [eax], 0
cmove ebx, ecx
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
pop edi
pop esi
mov eax, 0x34
pop ebx
mov esp, ebp
pop ebp
ret 0xc