Function at 0x420a70
Capabilities:
Enumerate process modules

Disassembly:
mov eax, 0x162c
call fcn.0049eb50
mov eax, dword [0x54b07c]
xor eax, esp
mov dword [esp + 0x1624], eax
push ebx
push ebp
mov eax, ecx
mov ebx, edx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
push esi
push edi
test eax, eax
je 0x420cd2
mov eax, dword [eax]
mov ebp, dword [eax + 0xc]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, eax
push ebp
push str.addr:__p_n
mov dword [esp + 0x1c], esi
call fcn.00402650
add esp, 8
lea eax, [esp + 0x10]
push eax
push 0x1000
lea eax, [esp + 0x28]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_K32EnumProcessModules]
test eax, eax
je 0x420b78
mov ecx, dword [esp + 0x10]
xor edi, edi
mov edx, dword [sym.imp.KERNEL32.dll_K32GetModuleBaseNameA]
xor esi, esi
test ecx, 0xfffffffc
jbe 0x420b44
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + esi*4 + 0x20]
cmp eax, edi
jbe 0x420b36
cmp eax, ebp
jae 0x420b36
mov edi, eax
lea eax, [esp + 0x1420]
push 0x104
push eax
push edi
push ebx
call edx
push edi
lea eax, [esp + 0x1424]
push eax
push str._s:__p_n
call fcn.00402650
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov edx, dword [sym.imp.KERNEL32.dll_K32GetModuleBaseNameA]
mov eax, ecx
inc esi
shr eax, 2
cmp esi, eax
jl 0x420af7
mov ebx, dword [esp + 0x1c]
push 0x104
lea eax, [esp + 0x152c]
push eax
push edi
push dword [esp + 0x20]
call edx
test eax, eax
je 0x420b78
push edi
lea eax, [esp + 0x152c]
push eax
push ebp
push str.Addr:0x_p___s_0x_p__n
push ebx
call fcn.00408ae0
add esp, 0x14
mov esi, eax
jmp 0x420b7a
xor esi, esi
push str.Mupen_64_1.1.6
lea eax, [ebx + esi]
push 0x5346d0
push eax
call fcn.00408ae0
add esp, 0xc
lea ebp, [esi + eax]
push 0x400
lea eax, [esp + 0x1024]
push 0
push eax
call fcn.004c7d50
mov eax, dword [esp + 0x24]
add esp, 0xc
mov eax, dword [eax]
mov ecx, dword [eax]
lea eax, [ecx + 0x3ffffffb]
cmp eax, 0xf8
ja case.0x420bca.1073741818
movzx eax, byte [eax + 0x420e24]
jmp dword [eax*4 + 0x420e0c]
mov eax, dword [str.Access_violation]
mov dword [esp + 0x1020], eax
mov eax, dword [0x534630]
mov dword [esp + 0x1024], eax
mov eax, dword [0x534634]
mov dword [esp + 0x1028], eax
mov eax, dword [0x534638]
mov dword [esp + 0x102c], eax
mov al, byte [0x53463c]
mov byte [esp + 0x1030], al
jmp 0x420caf
mov ecx, 0xb
lea edi, [esp + 0x1020]
mov esi, str.Attempted_to_access_out_of_bounds_array_index
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x420caf
mov ecx, 0xd
lea edi, [esp + 0x1020]
mov esi, str.An_operand_in_floating_point_operation_was_denormal
rep movsd dword es:[edi], dword [esi]
jmp 0x420caf
mov ecx, 5
lea edi, [esp + 0x1020]
mov esi, str.Float_division_by_zero
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x420caf
mov eax, dword [str.Stack_overflow]
mov dword [esp + 0x1020], eax
mov eax, dword [0x5346c0]
mov dword [esp + 0x1024], eax
mov eax, dword [0x5346c4]
mov dword [esp + 0x1028], eax
mov ax, word [0x5346c8]
mov word [esp + 0x102c], ax
mov al, byte [0x5346ca]
mov byte [esp + 0x102e], al
jmp 0x420caf
push ecx
lea eax, [esp + 0x1024]
push 0x5346cc
push eax
call fcn.00408ae0
add esp, 0xc
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
push dword [eax]
lea eax, [esp + 0x1024]
push eax
lea eax, [ebx + ebp]
push str.Exception_code:__s__0x_08x__n
push eax
call fcn.00408ae0
add esp, 0x10
jmp 0x420cf8
push str.Mupen_64_1.1.6
push str.Version:____s___n
push ebx
call fcn.00408ae0
add esp, 0xc
mov ebp, eax
lea ecx, [ebx + ebp]
push str.Exception_code:_unknown__no_exception_thrown__was_crash_log_called_manually___n
push ecx
call fcn.00408ae0
add esp, 8
add ebp, eax
cmp dword [0x26934a8], 0x10
mov eax, 0x2693494
jb 0x420d0d
mov eax, dword [0x2693494]
push eax
lea eax, [ebx + ebp]
push str.Gfx:_s_n
push eax
call fcn.00408ae0
add ebp, eax
add esp, 0xc
cmp dword [0x26934d8], 0x10
mov eax, 0x26934c4
jb 0x420d34
mov eax, dword [0x26934c4]
push eax
lea eax, [ebx + ebp]
push str.Input:_s_n
push eax
call fcn.00408ae0
add ebp, eax
add esp, 0xc
cmp dword [0x26934c0], 0x10
mov eax, 0x26934ac
jb 0x420d5b
mov eax, dword [0x26934ac]
push eax
lea eax, [ebx + ebp]
push str.Audio:_s_n
push eax
call fcn.00408ae0
add ebp, eax
add esp, 0xc
cmp dword [0x26934f0], 0x10
mov eax, 0x26934dc
jb 0x420d82
mov eax, dword [0x26934dc]
push eax
lea eax, [ebx + ebp]
push str.rsp:_s_n
push eax
call fcn.00408ae0
add esp, 0xc
add ebp, eax
push dword [0xf540c4]
lea eax, [ebx + ebp]
push str.m_task:_d_n
push eax
call fcn.00408ae0
add esp, 0xc
add ebp, eax
push dword [0xf5487c]
lea eax, [ebx + ebp]
push str.emu_launched:_d_n
push eax
call fcn.00408ae0
add ebp, eax
add esp, 0xc
xor eax, eax
cmp dword [0x2693564], eax
setne al
push eax
lea eax, [ebx + ebp]
push str.is_capturing_avi:_d_n
push eax
call fcn.00408ae0
add esp, 0xc
mov al, byte [ebx]
lea ebx, [ebx + 1]
mov byte [ebx - 1], al
test al, al
jne 0x420de5
mov ecx, dword [esp + 0x1634]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049dba8
add esp, 0x162c
ret