Function at 0x47a7ba
Capabilities:
Get memory capacity
Resume thread
Suspend thread

Disassembly:
push 0x608
push 0x49d7a8
call fcn.0046e650
mov esi, edx
mov edi, ecx
mov dword [ebp - 0x28], edi
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov ebx, 0x4be510
test esi, esi
cmovne ebx, esi
mov dword [ebp - 0x30], ebx
push ebx
call fcn.00404e2c
pop ecx
xor edx, edx
mov ecx, ebx
call fcn.0047a725
mov edi, dword [edi]
mov esi, dword [edi]
mov edx, str.Dolphin_Crash_Dump_Report
mov ecx, ebx
call fcn.0047a725
lea ecx, [ebp - 0x4c]
call fcn.0047a629
cmp dword [ebp - 0x3c], 0
jbe 0x47a840
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x90]
call fcn.00404ea8
cmp dword [eax + 0x14], 8
jb 0x47a82c
mov eax, dword [eax]
mov edx, eax
mov ecx, ebx
call fcn.0047a725
lea ecx, [ebp - 0x90]
call fcn.00406f60
lea ecx, [ebp - 0x4c]
call fcn.00406f60
and dword [ebp - 0x20], 0
push 0x104
lea eax, [ebp - 0x558]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x348]
push eax
push 0x104
lea eax, [ebp - 0x558]
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
push ebx
call fcn.00404e2c
pop ecx
push esi
push ecx
lea edx, [ebp - 0x78]
mov ecx, eax
call fcn.0047ccf2
pop ecx
mov edx, 0x48f294
mov ecx, eax
call fcn.00404b93
mov edx, dword [ebp - 0x20]
mov ecx, eax
call fcn.00404b93
mov edx, str._caused_an_unhandled_Win32_Exception
mov ecx, eax
call fcn.00404b93
mov ecx, eax
call fcn.0040336f
push eax
call fcn.00404e2c
pop ecx
push dword [edi + 0xc]
mov edx, 0x48f240
mov ecx, eax
call fcn.00404b93
mov ecx, eax
call fcn.0040336f
push 0x1c
lea eax, [ebp - 0x68]
push eax
push dword [edi + 0xc]
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
mov esi, dword [ebp - 0x64]
push str._UNKNOWN_
push 0x105
lea eax, [ebp - 0x348]
push eax
call fcn.0044acdf
add esp, 0xc
push 0x104
lea eax, [ebp - 0x348]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push esi
mov edx, str._in_module
mov ecx, ebx
call fcn.00404b93
mov ecx, eax
call fcn.0040336f
mov edx, 0x48f2b4
mov ecx, eax
call fcn.00404b93
lea edx, [ebp - 0x348]
mov ecx, eax
call fcn.00404b93
mov edx, 0x48f2b0
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
push eax
call fcn.00404e2c
pop ecx
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x47aa54
mov edx, str.______Exception_Parameters______
mov ecx, ebx
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
mov eax, dword [ebx]
mov eax, dword [eax + 4]
movzx ecx, word [eax + ebx + 0x40]
mov dword [ebp - 0x1c], ecx
push 0x30
pop ecx
mov word [eax + ebx + 0x40], cx
mov eax, dword [ebx]
mov eax, dword [eax + 4]
or dword [eax + ebx + 0x14], 4
mov eax, dword [ebx]
mov ecx, dword [eax + 4]
mov eax, dword [ecx + ebx + 0x14]
and eax, 0xfffff9ff
or eax, 0x800
mov dword [ecx + ebx + 0x14], eax
add edi, 0x14
mov esi, dword [edi]
push esi
push 0
push 8
lea eax, [ebp - 0xa0]
push eax
call fcn.0042aa92
pop ecx
pop ecx
mov edx, eax
mov ecx, ebx
call fcn.00404ced
pop ecx
mov ecx, eax
call fcn.0040340d
mov edx, 0x48f320
mov ecx, eax
call fcn.00404b93
push 0x28
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x47aa26
push 0x28
push esi
push 0x29
lea eax, [ebp - 0x138]
push eax
call sym.GUIToGo.exe_wcsncpy_s
add esp, 0x10
xor eax, eax
mov word [ebp - 0xe8], ax
lea edx, [ebp - 0x138]
mov ecx, ebx
call fcn.00404b93
push ebx
call fcn.00404e2c
pop ecx
add edi, 4
sub dword [ebp - 0x24], 1
jne 0x47a9bd
mov eax, dword [ebx]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 0x1c]
mov word [eax + ebx + 0x40], cx
mov eax, dword [ebx]
mov eax, dword [eax + 4]
and dword [eax + ebx + 0x14], 0xfffffffb
push ebx
call fcn.00404e2c
pop ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edi, eax
mov esi, dword [ebp - 0x28]
mov esi, dword [esi + 4]
mov edx, str.______CPU_Context_for_thread_0x
mov ecx, ebx
call fcn.00404b93
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
mov ecx, dword [edx + eax + 0x14]
and ecx, 0xfffff9ff
or ecx, 0x800
mov dword [edx + eax + 0x14], ecx
push edi
mov ecx, eax
call fcn.0040340d
mov edx, 0x48f324
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0047a1ae
push eax
call fcn.00404e2c
pop ecx
push 0x40
pop esi
push esi
push 0
lea eax, [ebp - 0xe0]
push eax
call sym.GUIToGo.exe_memset
add esp, 0xc
mov dword [ebp - 0xe0], esi
lea eax, [ebp - 0xe0]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
mov edx, str.______Memory_Statistics______
mov ecx, ebx
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
lea edx, [ebp - 0xe0]
mov ecx, eax
call fcn.0047a5b4
push eax
call fcn.00404e2c
pop ecx
mov eax, dword [0x4adfb8]
mov dword [ebp - 0x1c], eax
cmp edi, eax
jne 0x47abbd
and dword [ebp - 0x2c], 0
and dword [ebp - 4], 0
mov edx, ebx
mov ecx, dword [ebp - 0x28]
call fcn.0047c8a2
push ebx
call fcn.00404e2c
pop ecx
mov dword [ebp - 0x1c], eax
mov edx, str.______Stack_Back_Trace______
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
push dword [ebp + 0xc]
mov ecx, ebx
call fcn.0047cbd1
mov edx, dword [ebp + 8]
mov ecx, ebx
call fcn.0047cb47
or dword [ebp - 4], 0xffffffff
jmp 0x47ada2
mov edx, str.N.B._This_exception_did_NOT_occur_in_the_main_Dolphin_execution_thread_
mov ecx, ebx
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
push eax
call fcn.00404e2c
pop ecx
mov edx, str.______CPU_Context_for_main_thread_0x
mov ecx, ebx
call fcn.00404b93
mov ecx, dword [eax]
mov esi, dword [ecx + 4]
mov ecx, dword [esi + eax + 0x14]
and ecx, 0xfffff9ff
or ecx, 0x800
mov dword [esi + eax + 0x14], ecx
push dword [ebp - 0x1c]
mov ecx, eax
call fcn.0040340d
mov edx, 0x48f324
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
mov edi, dword [0x4adfb4]
push edi
call dword [sym.imp.KERNEL32.dll_SuspendThread]
test eax, eax
js 0x47ad53
push 0x2c8
push 0
lea eax, [ebp - 0x614]
push eax
call sym.GUIToGo.exe_memset
add esp, 0xc
mov dword [ebp - 0x618], 0x10007
lea eax, [ebp - 0x618]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetThreadContext]
test eax, eax
je 0x47acfb
lea edx, [ebp - 0x618]
mov ecx, ebx
call fcn.0047a1ae
push eax
call fcn.00404e2c
pop ecx
push 0x1c
lea eax, [ebp - 0x68]
push eax
push dword [ebp - 0x560]
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
mov esi, dword [ebp - 0x64]
push str._UNKNOWN_
push 0x105
lea eax, [ebp - 0x348]
push eax
call fcn.0044acdf
add esp, 0xc
push 0x104
lea eax, [ebp - 0x348]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push esi
mov edx, str.In_module
mov ecx, ebx
call fcn.00404b93
mov ecx, eax
call fcn.0040336f
mov edx, 0x48f2b4
mov ecx, eax
call fcn.00404b93
lea edx, [ebp - 0x348]
mov ecx, eax
call fcn.00404b93
mov edx, 0x48f2b0
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
jmp 0x47ad43
push ebx
call fcn.00404e2c
pop ecx
mov edx, str._Unable_to_access_main_interpter_thread_context__
mov ecx, eax
call fcn.00404b93
mov esi, eax
mov ecx, dword [esi]
mov edx, dword [ecx + 4]
mov ecx, dword [edx + esi + 0x14]
and ecx, 0xfffff3ff
or ecx, 0x200
mov dword [edx + esi + 0x14], ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call fcn.0040340d
mov edx, 0x48f2b0
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
push edi
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp 0x47ada2
push ebx
call fcn.00404e2c
pop ecx
mov edx, str._Unable_to_suspend_main_interpreter_thread__
mov ecx, eax
call fcn.00404b93
mov esi, eax
mov ecx, dword [esi]
mov edx, dword [ecx + 4]
mov ecx, dword [edx + esi + 0x14]
and ecx, 0xfffff3ff
or ecx, 0x200
mov dword [edx + esi + 0x14], ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call fcn.0040340d
mov edx, 0x48f2b0
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
push ebx
call fcn.00404e2c
pop ecx
mov edx, str._End_of_crash_report_
mov ecx, eax
call fcn.00404b93
push eax
call fcn.00404e2c
pop ecx
push eax
call fcn.00404e2c
pop ecx
mov ecx, ebx
call fcn.00403321
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret 8