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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov edi, dword [esp + 0x74]
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
test ebx, ebx
je 0x62e778a0
test edi, edi
je 0x62e778e0
cmp byte [ebx + 0x20], 0
js 0x62e77800
cmp byte [edi + 0x20], 0
js 0x62e77868
mov eax, dword [ebx + 8]
mov ecx, dword [edi + 8]
mov edx, dword [ebx + 0xc]
mov esi, dword [edi + 0xc]
mov ebp, eax
mov dword [esp + 0x20], ecx
or ebp, ecx
mov ecx, ebp
mov ebp, edx
or ebp, esi
or ecx, ebp
je 0x62e776b7
mov ecx, dword [esp + 0x20]
add eax, dword [ebx + 0x10]
adc edx, dword [ebx + 0x14]
xor esi, edx
xor ecx, eax
or esi, ecx
jne 0x62e77830
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
lea eax, [esp + 0x38]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_get_number_of_entries
cmp eax, 1
je 0x62e77718
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_retrieve_number_of_elements_from_elements_array.
mov dword [esp + 8], 6
mov eax, dword [esp + 0x78]
mov dword [esp + 4], 0x72
mov ebp, 0xffffffff
mov dword [esp], eax
call dbg.libcerror_error_set
add esp, 0x5c
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
lea eax, [esp + 0x3c]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_get_number_of_entries
cmp eax, 1
jne 0x62e77850
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x78]
mov dword [esp + 8], dbg.libfdata_list_element_free
mov dword [esp + 0x28], eax
add eax, dword [esp + 0x3c]
mov dword [esp + 0x2c], eax
mov dword [esp + 0xc], edx
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_resize
cmp eax, 1
je 0x62e778f8
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f21c14
mov eax, dword [esp + 0x78]
mov dword [esp + 8], 4
mov dword [esp + 4], 0x72
mov dword [esp], eax
call dbg.libcerror_error_set
mov eax, dword [esp + 0x2c]
mov ebp, 0xffffffff
test eax, eax
je 0x62e77708
mov eax, dword [esp + 0x38]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x1c]
mov dword [esp], eax
call dbg.libcdata_array_resize
mov eax, dword [esp + 0x38]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_resize
jmp 0x62e77708
mov eax, dword [esp + 0x78]
mov dword [esp], ebx
mov dword [esp + 4], eax
call dbg.libfdata_list_calculate_mapped_ranges
cmp eax, 1
je 0x62e77679
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f2241c
jmp 0x62e776e7
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_invalid_source_mapped_offset_value_out_of_bounds.
mov dword [esp + 8], 0xc
jmp 0x62e776ef
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_retrieve_number_of_elements_from_source_list_elements_array.
jmp 0x62e776e7
mov eax, dword [esp + 0x78]
mov dword [esp], edi
mov dword [esp + 4], eax
call dbg.libfdata_list_calculate_mapped_ranges
cmp eax, 1
je 0x62e77683
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_calculate_mapped_ranges_of_source_list.
jmp 0x62e776e7
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f21849
mov eax, dword [esp + 0x78]
mov dword [esp + 8], 1
mov ebp, 0xffffffff
mov dword [esp + 4], 0x61
mov dword [esp], eax
call dbg.libcerror_error_set
add esp, 0x5c
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f22401
jmp 0x62e778b0
mov eax, dword [esp + 0x78]
mov dword [esp + 8], dbg.libfdata_mapped_range_free
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x1c]
mov dword [esp], eax
call dbg.libcdata_array_resize
cmp eax, 1
jne 0x62e77a30
mov edx, dword [esp + 0x3c]
lea eax, [esp + 0x30]
mov ebp, dword [esp + 0x78]
xor esi, esi
mov dword [esp + 0x24], eax
test edx, edx
jg 0x62e779c9
jmp 0x62e77a45
mov eax, dword [esp + 0x30]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_set_entry_by_index
cmp eax, 1
jne 0x62e77c32
lea eax, [esp + 0x34]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov eax, dword [edi + 0x1c]
mov dword [esp], eax
call dbg.libcdata_array_get_entry_by_index
cmp eax, 1
jne 0x62e77c6b
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x1c]
mov dword [esp], eax
call dbg.libcdata_array_set_entry_by_index
cmp eax, 1
jne 0x62e77c84
add esi, 1
cmp dword [esp + 0x3c], esi
jle 0x62e77a45
mov eax, dword [esp + 0x28]
mov dword [esp + 0xc], ebp
mov dword [esp + 4], esi
add eax, esi
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 8], eax
mov eax, dword [edi + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_get_entry_by_index
cmp eax, 1
je 0x62e77948
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_retrieve_entry:__d_from_source_list_elements_array.
mov eax, dword [esp + 0x78]
mov dword [esp + 8], 6
mov dword [esp + 4], 0x72
mov dword [esp], eax
call dbg.libcerror_error_set
jmp 0x62e777a0
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f21c3c
jmp 0x62e77784
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x38]
mov dword [esp + 4], 0
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
mov eax, dword [edi + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_empty
mov ebp, eax
cmp eax, 1
je 0x62e77aa4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x10], str.libfdata_list_append_list
mov ebp, 0xffffffff
mov dword [esp + 0xc], str._s:_unable_to_empty_source_list_elements_array.
mov dword [esp + 8], 4
mov dword [esp + 4], 0x72
mov dword [esp], eax
call dbg.libcerror_error_set
mov eax, dword [esp + 0x78]
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov eax, dword [edi + 0x1c]
mov dword [esp], eax
call dbg.libcdata_array_empty
cmp eax, 1
je 0x62e77af5
mov eax, dword [esp + 0x78]
mov dword [esp + 0x10], str.libfdata_list_append_list
mov ebp, 0xffffffff
mov dword [esp + 0xc], str._s:_unable_to_empty_source_list_mapped_ranges_array.
mov dword [esp + 8], 4
mov dword [esp + 4], 0x72
mov dword [esp], eax
call dbg.libcerror_error_set
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
cmp esi, dword [esp + 0x38]
jge 0x62e77708
lea eax, [esp + 0x30]
mov dword [esp + 0x20], ebp
lea edi, [esp + 0x48]
mov ebp, dword [esp + 0x78]
mov dword [esp + 0x24], eax
jmp 0x62e77bd4
mov eax, dword [esp + 0x30]
mov dword [eax], ebx
mov dword [eax + 4], esi
lea eax, [esp + 0x34]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov eax, dword [ebx + 0x1c]
mov dword [esp], eax
call dbg.libcdata_array_get_entry_by_index
cmp eax, 1
jne 0x62e77cbf
lea eax, [esp + 0x40]
mov dword [esp + 0xc], ebp
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], edi
mov dword [esp], eax
call dbg.libfdata_mapped_range_get
cmp eax, 1
jne 0x62e77c9e
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x14], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov eax, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], edx
mov dword [esp], eax
call dbg.libfdata_mapped_range_set
cmp eax, 1
jne 0x62e77ce9
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
add dword [ebx + 0x10], eax
adc dword [ebx + 0x14], edx
add esi, 1
cmp dword [esp + 0x38], esi
jle 0x62e77ce0
mov eax, dword [esp + 0x24]
mov dword [esp + 0xc], ebp
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call dbg.libcdata_array_get_entry_by_index
cmp eax, 1
je 0x62e77b30
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_retrieve_entry:__d_from_elements_array.
mov dword [esp + 8], 6
mov eax, dword [esp + 0x78]
mov dword [esp + 4], 0x72
mov ebp, 0xffffffff
mov dword [esp], eax
call dbg.libcerror_error_set
jmp 0x62e77708
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_set_entry:__d_in_elements_array.
mov dword [esp + 0x14], ebp
mov eax, dword [esp + 0x78]
mov dword [esp + 8], 7
mov dword [esp + 4], 0x72
mov dword [esp], eax
call dbg.libcerror_error_set
jmp 0x62e777a0
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_retrieve_entry:__d_from_source_list_mapped_ranges_array.
jmp 0x62e77a0b
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f21f74
mov dword [esp + 0x14], ebp
jmp 0x62e77c4a
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f225f4
mov dword [esp + 8], 6
jmp 0x62e77c14
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], 0x62f21f14
mov dword [esp + 8], 6
jmp 0x62e77c14
mov ebp, dword [esp + 0x20]
jmp 0x62e77708
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], str.libfdata_list_append_list
mov dword [esp + 0xc], str._s:_unable_to_set_values_of_mapped_range:__d.
mov dword [esp + 8], 7
jmp 0x62e77c14