Function at 0x10008c9d
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
lea ebp, [esp - 0x8c]
sub esp, 0x10c
mov eax, dword [0x100310fc]
xor eax, ebp
mov dword [ebp + 0x88], eax
mov eax, dword [ebp + 0x94]
push ebx
push esi
mov esi, ecx
push edi
xor ebx, ebx
push ebx
lea ecx, [esi + 0x304]
mov dword [ebp - 0x80], eax
mov dword [esi + 0x2fc], ebx
call fcn.1000696e
lea ecx, [esi + 0x310]
call fcn.1000479b
push 0x10029660
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 8], eax
cmp eax, ebx
je 0x10008d07
push str.OpenThread
push eax
call edi
jmp 0x10008d09
xor eax, eax
mov dword [esi + 0x714], eax
push 0x104
lea eax, [ebp - 0x7c]
push eax
push dword [0x10032e00]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
push str.DBGHELP.DLL
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [esi + 4], eax
cmp eax, ebx
jne 0x10008d5c
push str.DBGHELP.DLL
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi], ebx
cmp eax, ebx
je 0x10008ea7
push str.SymGetOptions
push eax
call edi
push str.SymSetOptions
push dword [esi + 4]
mov dword [esi + 0x6ec], eax
call edi
push str.SymInitialize
push dword [esi + 4]
mov dword [esi + 0x6f0], eax
call edi
push str.SymCleanup
push dword [esi + 4]
mov dword [esi + 0x6f4], eax
call edi
push str.SymGetModuleBase64
push dword [esi + 4]
mov dword [esi + 0x6f8], eax
call edi
push str.SymFromAddr
push dword [esi + 4]
mov dword [esi + 0x6fc], eax
call edi
push str.SymGetLineFromAddr64
push dword [esi + 4]
mov dword [esi + 0x700], eax
call edi
push str.StackWalk64
push dword [esi + 4]
mov dword [esi + 0x704], eax
call edi
push str.SymFunctionTableAccess64
push dword [esi + 4]
mov dword [esi + 0x708], eax
call edi
push str.MiniDumpWriteDump
push dword [esi + 4]
mov dword [esi + 0x70c], eax
call edi
mov ecx, dword [esi + 0x6ec]
mov dword [esi + 0x710], eax
cmp ecx, ebx
je 0x10008e9b
cmp dword [esi + 0x6f0], ebx
je 0x10008e9b
cmp dword [esi + 0x6f4], ebx
je 0x10008e9b
cmp dword [esi + 0x6f8], ebx
je 0x10008e9b
cmp dword [esi + 0x6fc], ebx
je 0x10008e9b
cmp dword [esi + 0x700], ebx
je 0x10008e9b
cmp dword [esi + 0x704], ebx
je 0x10008e9b
cmp dword [esi + 0x708], ebx
je 0x10008e9b
cmp dword [esi + 0x70c], ebx
je 0x10008e9b
cmp eax, ebx
je 0x10008e9b
call ecx
or eax, 0x16
push eax
call dword [esi + 0x6f0]
cmp dword [0x10033a64], ebx
je 0x10008e75
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
jmp 0x10008e7b
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push 1
push ebx
push eax
mov dword [esi], eax
call dword [esi + 0x6f4]
test eax, eax
je 0x10008e97
push dword [ebp - 0x80]
mov ecx, esi
call fcn.10008a6e
jmp 0x10008ea7
mov dword [esi], ebx
jmp 0x10008ea7
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [esi + 4], ebx
cmp dword [esi + 4], ebx
jne 0x10008ee8
mov dword [esi + 0x6ec], ebx
mov dword [esi + 0x6f0], ebx
mov dword [esi + 0x6f4], ebx
mov dword [esi + 0x6f8], ebx
mov dword [esi + 0x6fc], ebx
mov dword [esi + 0x700], ebx
mov dword [esi + 0x704], ebx
mov dword [esi + 0x708], ebx
mov dword [esi + 0x70c], ebx
mov dword [esi + 0x710], ebx
cmp dword [esi], ebx
jne 0x10008ef3
mov ecx, esi
call fcn.10008add
mov ecx, dword [ebp + 0x88]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.100162d3
add ebp, 0x8c
leave
ret 4