Function at 0x1013aac0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1019743d
mov eax, dword fs:[0]
push eax
sub esp, 0x608
mov eax, dword [0x10279264]
xor eax, esp
mov dword [esp + 0x600], eax
push ebx
push esi
push edi
mov eax, dword [0x10279264]
xor eax, esp
push eax
lea eax, [esp + 0x618]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
xor eax, eax
mov ebx, ecx
mov ecx, dword [esi + 0x10]
sub ecx, dword [esi + 0xc]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov eax, 0xaf3addc7
imul ecx
add edx, ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
lea edi, [edx + eax - 1]
mov dword [esp + 0x1c], ebx
test edi, edi
jl 0x1013acad
mov ebx, edi
imul ebx, ebx, 0x5d8
mov edi, edi
mov ecx, dword [esi + 0x10]
sub ecx, dword [esi + 0xc]
mov eax, 0xaf3addc7
imul ecx
add edx, ecx
sar edx, 0xa
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp edi, ecx
jb 0x1013ab62
call fcn.1016d669
mov eax, dword [esi + 0xc]
push 4
add eax, ebx
push str._RSV
push eax
call fcn.100192e0
cmp eax, 0xffffffff
je 0x1013abb8
mov ecx, dword [esi + 0x10]
sub ecx, dword [esi + 0xc]
mov eax, 0xaf3addc7
imul ecx
add edx, ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x1013ab9b
call fcn.1016d669
mov ecx, dword [esi + 0xc]
cmp byte [ebx + ecx + 0x5ba], 1
je 0x1013abb8
dec edi
sub ebx, 0x5d8
test edi, edi
jge 0x1013ab40
jmp 0x1013aca9
test edi, edi
jl 0x1013aca9
mov ecx, dword [esi + 0x10]
sub ecx, dword [esi + 0xc]
mov eax, 0xaf3addc7
imul ecx
add edx, ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x1013abe2
call fcn.1016d669
imul edi, edi, 0x5d8
add edi, dword [esi + 0xc]
lea ecx, [esp + 0x34]
push edi
push ecx
call fcn.10049f90
mov dword [esp + 0x620], 0
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
jae 0x1013ac20
lea edx, [esp + 0x38]
mov esi, dword [esp + 0x450]
push esi
mov esi, dword [esp + 0x450]
push esi
push edx
mov edx, dword [esp + 0x8c]
push edx
mov edx, dword [esp + 0x8c]
push edx
push ecx
push eax
push str.m_begin_addr0X_016I64X_m_end_addr__0X_016I64X_m_name___s_m_len__0X_X
lea edi, [esp + 0x40]
mov dword [esp + 0x40], str.FlashToolLib_sv5_common_generic_src_StorageSizeCheck.cpp
mov dword [esp + 0x44], 0x91
mov byte [esp + 0x48], 0
mov dword [esp + 0x4c], str._DEBUG:
mov dword [esp + 0x50], str.CEMMCStorageSizeCheck::IsStorageSizeEnough
call fcn.10017c90
add esp, 0x20
cmp byte [esp + 0x5ec], 0
je 0x1013ac94
lea ecx, [esp + 0x34]
call fcn.1013ad70
add dword [esp + 0x14], eax
adc dword [esp + 0x18], edx
lea eax, [esp + 0x34]
push eax
mov dword [esp + 0x624], 0xffffffff
call fcn.1004a030
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [ebx + 0xc]
mov eax, dword [ebx + 8]
push esi
push ecx
push edx
push eax
push str.StorageSize0X_016I64X_u64LastImgEndAddr__0X_016I64X
lea edi, [esp + 0x34]
mov dword [esp + 0x34], str.FlashToolLib_sv5_common_generic_src_StorageSizeCheck.cpp
mov dword [esp + 0x38], 0x97
mov byte [esp + 0x3c], 0
mov dword [esp + 0x40], str._DEBUG:
mov dword [esp + 0x44], str.CEMMCStorageSizeCheck::IsStorageSizeEnough
call fcn.10017c90
mov ecx, dword [ebx + 0xc]
add esp, 0x14
cmp ecx, esi
ja 0x1013ad0e
jb 0x1013ad07
mov edx, dword [ebx + 8]
cmp edx, dword [esp + 0x14]
jae 0x1013ad0e
mov eax, 0x3f3
jmp 0x1013ad46
push str.storage_size_is_enough_success_
lea edi, [esp + 0x24]
mov dword [esp + 0x24], str.FlashToolLib_sv5_common_generic_src_StorageSizeCheck.cpp
mov dword [esp + 0x28], 0x9c
mov byte [esp + 0x2c], 0
mov dword [esp + 0x30], str._DEBUG:
mov dword [esp + 0x34], str.CEMMCStorageSizeCheck::IsStorageSizeEnough
call fcn.10017c90
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x618]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x600]
xor ecx, esp
call fcn.1016cb16
mov esp, ebp
pop ebp
ret 4