Function at 0x100e2d60
Capabilities:
Enumerate files on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1019d2a3
mov eax, dword fs:[0]
push eax
sub esp, 0x1c8
mov eax, dword [0x10279264]
xor eax, esp
mov dword [esp + 0x1c0], eax
push ebx
push esi
push edi
mov eax, dword [0x10279264]
xor eax, esp
push eax
lea eax, [esp + 0x1d8]
mov dword fs:[0], eax
xor esi, esi
mov edi, edx
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x88], 0xf
mov dword [esp + 0x84], esi
mov byte [esp + 0x74], 0
cmp dword [ebp + 0xc], 1
lea eax, [esp + 0x54]
push eax
mov dword [esp + 0x1e4], esi
mov byte [esp + 0x15], 0
sete bl
call fcn.100ee3a0
add esp, 4
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x7c]
mov byte [esp + 0x1ec], 1
call fcn.10004b90
mov byte [esp + 0x1e0], 0
cmp dword [esp + 0x6c], 0x10
jb 0x100e2e14
mov ecx, dword [esp + 0x58]
push ecx
call fcn.1016d679
add esp, 4
push str.FlashToolLib_source_common_handle_src_flashtool_handle_internal.cpp
mov edx, 0x10201619
xor cl, cl
mov eax, 0xe6a
lea esi, [esp + 0x28]
call fcn.10111280
mov byte [esp + 0x1e0], 2
cmp dword [esp + 0x88], 0x10
mov edx, dword [esp + 0x74]
jae 0x100e2e48
lea edx, [esp + 0x74]
movzx ecx, byte [ebp + 8]
push edx
mov edx, dword [0x103b321c]
push ecx
push edi
push str.DL_HANDLE_0x_08X_::AutoLoadByScatRegionName__:_allow_rom_type_0x_02X_._base_dir__s_
push edx
push eax
call fcn.10111350
add esp, 0x18
mov byte [esp + 0x1e0], 0
test bl, bl
je 0x100e2e78
lea esi, [edi + 0x70]
call fcn.100043b0
mov ecx, dword [edi + 0x10]
sub ecx, dword [edi + 0xc]
mov eax, 0xaf3addc7
imul ecx
add edx, ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax - 1]
movzx eax, cx
xor edx, edx
cmp dx, ax
mov dword [esp + 0x14], eax
jg 0x100e351e
jmp 0x100e2eb4
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0x10]
sub ecx, dword [esi + 0xc]
movsx edi, ax
mov eax, 0xaf3addc7
imul ecx
add edx, ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x100e2edd
call fcn.1016d669
movsx ebx, word [esp + 0x14]
movzx eax, byte [ebp + 8]
imul ebx, ebx, 0x5d8
add ebx, dword [esi + 0xc]
test dword [ebx + 0x64], eax
je 0x100e3506
mov dword [esp + 0x50], 0xf
mov dword [esp + 0x4c], 0
mov byte [esp + 0x3c], 0
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x78]
push ecx
lea ecx, [esp + 0x44]
mov byte [esp + 0x1ec], 3
call fcn.10004b90
cmp dword [ebx + 0x18], 0x10
jb 0x100e2f39
mov ecx, dword [ebx + 4]
lea eax, [ebx + 4]
mov dword [esp + 0x20], eax
jmp 0x100e2f40
lea ecx, [ebx + 4]
mov dword [esp + 0x20], ecx
mov eax, ecx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x100e2f45
sub eax, esi
push eax
push ecx
lea ecx, [esp + 0x40]
call fcn.100172a0
mov edx, dword [ebx + 0x40c]
push 0
lea esi, [ebx + 0x3f8]
push 0x10201619
push edx
push 0
mov ecx, esi
call fcn.100434b0
test eax, eax
je 0x100e2ff0
mov ecx, dword [esp + 0x3c]
mov eax, 0x10
cmp dword [esp + 0x50], eax
jae 0x100e2f8d
lea ecx, [esp + 0x3c]
cmp dword [esi + 0x18], eax
jb 0x100e2f97
mov eax, dword [esi + 4]
jmp 0x100e2f9a
lea eax, [esi + 4]
push ecx
push eax
call fcn.10188c3e
add esp, 8
test eax, eax
jne 0x100e2fb3
mov edi, esi
call fcn.100da490
test al, al
jne 0x100e2ff0
mov eax, dword [esp + 0x74]
mov ecx, 0x10
cmp dword [esp + 0x88], ecx
jae 0x100e2fc9
lea eax, [esp + 0x74]
cmp dword [esi + 0x18], ecx
jb 0x100e2fd3
mov esi, dword [esi + 4]
jmp 0x100e2fd6
add esi, 4
mov ecx, dword [esp + 0x84]
push ecx
push eax
push esi
call fcn.1017b158
add esp, 0xc
test eax, eax
je 0x100e34ea
mov eax, dword [esp + 0x3c]
mov edi, 0x10
cmp dword [esp + 0x50], edi
jae 0x100e3003
lea eax, [esp + 0x3c]
call fcn.100ee100
test al, al
jne 0x100e3420
mov edx, dword [ebx + 0x14]
push 0xa
push str.BOOTLOADER
push edx
push 0
mov ecx, ebx
mov byte [esp + 0x23], al
call fcn.100434b0
test eax, eax
jne 0x100e3073
push str.FlashToolLib_source_common_handle_src_flashtool_handle_internal.cpp
mov edx, str._WARNING:
mov cl, 0xd2
mov eax, 0xe8e
lea esi, [esp + 0x28]
call fcn.10111280
mov byte [esp + 0x1e0], 4
mov ecx, dword [0x103b321c]
push str.DL_HANDLE_0x_08X_::AutoLoadByScatRegionName__:_BOOTLOADER_does_not_exist
push ecx
push eax
call fcn.10111350
add esp, 0xc
mov byte [esp + 0x1e0], 3
mov dword [esp + 0x1c], 0x3f9
mov edx, dword [ebx + 0x14]
push 6
push str.DSP_BL
push edx
push 0
mov ecx, ebx
call fcn.100434b0
test eax, eax
jne 0x100e30d2
push str.FlashToolLib_source_common_handle_src_flashtool_handle_internal.cpp
mov edx, str._WARNING:
mov cl, 0xd2
mov eax, 0xe93
lea esi, [esp + 0x28]
call fcn.10111280
mov byte [esp + 0x1e0], 5
mov ecx, dword [0x103b321c]
push str.DL_HANDLE_0x_08X_::AutoLoadByScatRegionName__:_DSP_BL_does_not_exist
push ecx
push eax
call fcn.10111350
add esp, 0xc
mov byte [esp + 0x1e0], 3
mov dword [esp + 0x1c], 0x3f9
mov esi, dword [esp + 0x18]
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 eax, 1
jne 0x100e312b
mov ecx, dword [ebx + 0x14]
push 3
push 0x1023bad4
push ecx
push 0
mov ecx, ebx
call fcn.100434b0
test eax, eax
jne 0x100e312b
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0x50], edi
jae 0x100e311a
lea eax, [esp + 0x3c]
push eax
call fcn.100ee190
add esp, 4
test al, al
je 0x100e31da
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 eax, 2
jne 0x100e3192
mov ecx, 1
cmp cx, word [esp + 0x14]
jne 0x100e3192
mov edx, dword [ebx + 0x14]
push 3
push 0x1023bad4
push edx
push 0
mov ecx, ebx
call fcn.100434b0
test eax, eax
jne 0x100e34ea
cmp dword [esp + 0x50], 0x10
mov eax, dword [esp + 0x3c]
jae 0x100e3180
lea eax, [esp + 0x3c]
push eax
call fcn.100ee190
add esp, 4
test al, al
je 0x100e31da
jmp 0x100e34ea
xor eax, eax
cmp ax, word [esp + 0x14]
jne 0x100e34ea
mov ecx, dword [ebx + 0x14]
push 0xa
push str.BOOTLOADER
push ecx
push eax
mov ecx, ebx
call fcn.100434b0
test eax, eax
jne 0x100e34ea
cmp dword [esp + 0x50], 0x10
mov eax, dword [esp + 0x3c]
jae 0x100e31c9
lea eax, [esp + 0x3c]
push eax
call fcn.100ee190
add esp, 4
test al, al
jne 0x100e34ea
mov edi, 0xf
mov byte [esp + 0x12], 0
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], 0
mov byte [esp + 0x58], 0
push 0xffffffffffffffff
push 0
lea edx, [esp + 0x78]
push edx
lea ecx, [esp + 0x60]
mov byte [esp + 0x1ec], 6
call fcn.10004b90
mov eax, dword [ebx + 0x14]
push 0xa
push str.BOOTLOADER
push eax
push 0
mov ecx, ebx
call fcn.100434b0
lea ecx, [esp + 0x54]
test eax, eax
jne 0x100e323e
push 0x10
push str.BOOTLOADER.bin
call fcn.100172a0
mov byte [esp + 0x12], 1
jmp 0x100e324a
push 5
push str..bin
call fcn.100172a0
cmp dword [esp + 0x6c], 0x10
mov eax, dword [esp + 0x58]
jae 0x100e3259
lea eax, [esp + 0x58]
lea ecx, [esp + 0x8c]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x100e3316
push str.FlashToolLib_source_common_handle_src_flashtool_handle_internal.cpp
mov edx, str._WARNING:
mov cl, 0xd2
mov eax, 0xeb2
lea esi, [esp + 0x28]
call fcn.10111280
mov byte [esp + 0x1e0], 7
cmp dword [esp + 0x50], 0x10
mov edx, dword [esp + 0x3c]
jae 0x100e32a4
lea edx, [esp + 0x3c]
mov ecx, dword [esp + 0x20]
mov esi, 0x10
cmp dword [ebx + 0x18], esi
jb 0x100e32b4
mov ecx, dword [ecx]
push edx
mov edx, dword [esp + 0x1c]
push ecx
movsx ecx, word [esp + 0x1c]
push ecx
mov ecx, dword [0x103b321c]
push edx
push str.DL_HANDLE_0x_08X_::AutoLoadByScatRegionName__:___u_:__s__file___s__doesnt_exist_and_no_bin_file_was_found___
push ecx
push eax
call fcn.10111350
add esp, 0x1c
cmp dword [esp + 0x6c], esi
jb 0x100e32e9
mov edx, dword [esp + 0x58]
push edx
call fcn.1016d679
add esp, 4
mov byte [esp + 0x1e0], 0
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], 0
mov byte [esp + 0x58], 0
cmp dword [esp + 0x50], esi
jb 0x100e3506
mov eax, dword [esp + 0x3c]
push eax
jmp 0x100e34fe
mov edi, dword [sym.imp.KERNEL32.dll_FindNextFileA]
lea esp, [esp]
lea eax, [esp + 0xb8]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100e3330
sub eax, edx
mov ecx, str._DA.bin
lea eax, [esp + eax + 0xb1]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100e3365
test dl, dl
je 0x100e3361
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100e3365
add eax, 2
add ecx, 2
test dl, dl
jne 0x100e3345
xor eax, eax
jmp 0x100e336a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x100e338e
lea ecx, [esp + 0xb8]
push str.BOOTLOADER
push ecx
call fcn.1016cf90
add esp, 8
test eax, eax
je 0x100e339f
cmp byte [esp + 0x12], 0
jne 0x100e339f
lea edx, [esp + 0x8c]
push edx
push esi
call edi
test eax, eax
jne 0x100e3320
jmp 0x100e33ed
push 0xffffffffffffffff
push 0
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x60]
mov byte [esp + 0x1f], 1
call fcn.10004b90
lea eax, [esp + 0xb8]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100e33c0
sub eax, edx
push eax
lea ecx, [esp + 0xbc]
push ecx
lea ecx, [esp + 0x5c]
call fcn.100172a0
push 0xffffffffffffffff
push 0
lea edx, [esp + 0x5c]
push edx
lea ecx, [esp + 0x44]
call fcn.10004b90
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov byte [esp + 0x1e0], 3
cmp dword [esp + 0x6c], 0x10
jb 0x100e3410
mov eax, dword [esp + 0x58]
push eax
call fcn.1016d679
add esp, 4
cmp byte [esp + 0x13], 0
je 0x100e34ea
mov edi, 0x10
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0x50], edi
jae 0x100e342e
lea eax, [esp + 0x3c]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
push eax
push ecx
push esi
call fcn.100e60c0
mov edi, eax
mov dword [esp + 0x1c], edi
test edi, edi
je 0x100e34ad
push str.FlashToolLib_source_common_handle_src_flashtool_handle_internal.cpp
mov edx, str._WARNING:
mov cl, 0xd2
mov eax, 0xecb
lea esi, [esp + 0x28]
call fcn.10111280
mov byte [esp + 0x1e0], 8
cmp dword [esp + 0x50], 0x10
mov ecx, dword [esp + 0x3c]
jae 0x100e3479
lea ecx, [esp + 0x3c]
mov esi, dword [esp + 0x14]
mov edx, dword [0x103b321c]
push ecx
push edi
mov edi, dword [esp + 0x20]
movsx ecx, si
push ecx
push edi
push str.DL_HANDLE_0x_08X_::AutoLoadByScatRegionName__:_Rom_Load__d_:_fail__ret__d___filepath__s_
push edx
push eax
call fcn.10111350
add esp, 0x1c
push esi
mov byte [esp + 0x1e4], 3
call fcn.100e6da0
mov esi, edi
mov eax, dword [ebx + 0x14]
push 3
push 0x1023bad4
push eax
push 0
mov ecx, ebx
call fcn.100434b0
test eax, eax
jne 0x100e34ea
cmp byte [esp + 0x11], al
jne 0x100e34ea
push 0x198e
lea ecx, [esi + 0x1b70]
call fcn.100da1a0
mov dword [esi + 0x1f0c], 0
mov byte [esp + 0x11], 1
mov byte [esp + 0x1e0], 0
cmp dword [esp + 0x50], 0x10
jb 0x100e3506
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.1016d679
add esp, 4
mov eax, dword [esp + 0x14]
dec eax
xor edx, edx
cmp dx, ax
mov dword [esp + 0x14], eax
jle 0x100e2eb0
mov edi, dword [esp + 0x18]
push 0xffff
mov ebx, edi
call fcn.100e7720
cmp dword [esp + 0x88], 0x10
jb 0x100e3541
mov eax, dword [esp + 0x74]
push eax
call fcn.1016d679
add esp, 4
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1d8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1c0]
xor ecx, esp
call fcn.1016cb16
mov esp, ebp
pop ebp
ret 8