Function at 0x10007b90
Capabilities:
Extract resource via kernel32 functions
Resume thread
Suspend thread
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100116c8
mov eax, dword fs:[0]
push eax
sub esp, 0x8c
mov eax, dword [0x10016040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x98], ecx
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x90]
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
call fcn.10008de0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x48]
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
call fcn.10008e10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
call fcn.10008e40
add esp, 0xc
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 3
call fcn.10007a20
test al, al
je 0x10007c4e
cmp dword [0x10016f98], 0
je 0x10007c4e
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [0x10016ed4]
call dword [sym.imp.KERNEL32.dll_SuspendThread]
push 0
push str.bad_config_file
push str.your_config.ini_file_cannot_be_properly_read__go_to_troubleshooting_section_of_Ezorsia_v2_setup_guide_at_https:__github.com_444Ro666_MapleEzorsia_v2_for_more_details__or_delete_your_config.ini_to_have_a_new_one_generated_with_default_settings
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
lea ecx, [ebp - 0x30]
call fcn.10007a20
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileA]
test al, al
jne 0x10007d1f
push 0
push 0
push 2
push 0
push 0
push 0xc0000000
push str.config.ini
call esi
mov dword [ebp - 0x94], eax
test eax, eax
je 0x10007d1f
push 0x10012d50
call edi
push 0xa
mov edi, eax
push 0x65
push edi
mov dword [ebp - 0x18], edi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
push esi
push edi
call dword [sym.imp.KERNEL32.dll_LoadResource]
push esi
push dword [ebp - 0x18]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push edi
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov ecx, dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, eax
push 2
call ecx
push dword [0x10016ed4]
mov ecx, dword [sym.imp.KERNEL32.dll_SuspendThread]
call ecx
mov edi, dword [ebp - 0x18]
lea eax, [ebp - 0x14]
push 0
push eax
push edi
push esi
mov esi, dword [ebp - 0x94]
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x10007d6a
cmp dword [ebp - 0x14], edi
jne 0x10007d6a
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [0x10016ed4]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea ecx, [ebp - 0x90]
call fcn.10007a20
test al, al
jne 0x10007d8d
lea ecx, [ebp - 0x48]
call fcn.10007a20
test al, al
jne 0x10007d8d
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [0x10016ed4]
call dword [sym.imp.KERNEL32.dll_SuspendThread]
push 0
push str.missing_.wz_.img_file
push str.Either_Base.wz_is_missing_from_your_game_directory_OR_you_are_loading_from_.img_and_zmap.img_is_not_in_your_Data_directory__please_reinstall_and_make_sure_relevant_file_s__exist
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
push str.bad_config_file
push str.your_config.ini_file_doesnt_exist__please_re_download_config.ini_from_Ezorsia_v2_releases_at_https:__github.com_444Ro666_MapleEzorsia_v2
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov dword [ebp - 0x14], esp
push 0x10
movups xmmword [ecx], xmm0
push str.CustomLoginFrame
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
sub esp, 0x18
mov byte [ebp - 4], 4
mov ecx, esp
xorps xmm0, xmm0
push 8
movups xmmword [ecx], xmm0
push str.optional
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
mov byte [ebp - 4], 3
call fcn.10006630
mov byte [0x10016ed1], al
test al, al
je 0x10007e00
mov byte [0x10016f52], 1
mov byte [0x10016ed0], 1
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x78]
push dword [ebp - 0x14]
call fcn.10008e70
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x60]
mov byte [ebp - 0x14], 0
push dword [ebp - 0x14]
call fcn.10008ea0
add esp, 8
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 6
call fcn.10007a20
test al, al
je 0x1000804a
mov byte [0x10016ed2], 1
mov byte [0x10016ed1], 1
mov byte [0x10016f50], 1
push 0x500
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov dword [ebp - 0x14], esp
push 5
movups xmmword [ecx], xmm0
push str.width
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
sub esp, 0x18
mov byte [ebp - 4], 7
mov ecx, esp
xorps xmm0, xmm0
push 7
movups xmmword [ecx], xmm0
push str.general
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
mov byte [ebp - 4], 6
call fcn.100064a0
push 0x2d0
sub esp, 0x18
mov dword [0x10016124], eax
mov ecx, esp
mov dword [ebp - 0x14], esp
xorps xmm0, xmm0
push 6
movups xmmword [ecx], xmm0
push str.height
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
sub esp, 0x18
mov byte [ebp - 4], 8
mov ecx, esp
xorps xmm0, xmm0
push 7
movups xmmword [ecx], xmm0
push str.general
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
mov byte [ebp - 4], 6
call fcn.100064a0
push 0x1a
sub esp, 0x18
mov dword [0x10016128], eax
mov ecx, esp
mov dword [ebp - 0x14], esp
xorps xmm0, xmm0
push 9
movups xmmword [ecx], xmm0
push str.MsgAmount
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
sub esp, 0x18
mov byte [ebp - 4], 9
mov ecx, esp
xorps xmm0, xmm0
push 7
movups xmmword [ecx], xmm0
push str.general
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
mov byte [ebp - 4], 6
call fcn.100064a0
push 1
sub esp, 0x18
mov dword [0x100160bc], eax
mov ecx, esp
mov dword [ebp - 0x14], esp
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
push 0xc
push str.WindowedMode
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
sub esp, 0x18
mov byte [ebp - 4], 0xa
mov ecx, esp
xorps xmm0, xmm0
push 7
movups xmmword [ecx], xmm0
push str.general
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
mov byte [ebp - 4], 6
call fcn.10006630
push 1
sub esp, 0x18
mov byte [0x100160b9], al
mov ecx, esp
mov dword [ebp - 0x14], esp
xorps xmm0, xmm0
push 0xb
movups xmmword [ecx], xmm0
push str.RemoveLogos
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
sub esp, 0x18
mov byte [ebp - 4], 0xb
mov ecx, esp
xorps xmm0, xmm0
push 7
movups xmmword [ecx], xmm0
push str.general
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10005ca0
mov byte [ebp - 4], 6
call fcn.10006630
mov ecx, dword [ebp + 0x2c]
mov byte [0x100160b8], al
test ecx, ecx
jne 0x1000823d
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
lea ecx, [ebp - 0x60]
call fcn.10007a20
test al, al
jne 0x10007e40
lea ecx, [ebp - 0x90]
call fcn.10007a20
test al, al
je 0x10008139
push 0
push 0
push 2
push 0
push 0
push 0xc0000000
push 0x1001302c
call esi
mov dword [ebp - 0x94], eax
test eax, eax
je 0x10008124
push 0x10012d50
call edi
push 0xa
mov edi, eax
push 0x66
push edi
mov dword [ebp - 0x14], edi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
push esi
push edi
call dword [sym.imp.KERNEL32.dll_LoadResource]
push esi
push dword [ebp - 0x14]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push edi
mov dword [ebp - 0x14], eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov ecx, dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, eax
push 2
call ecx
push dword [0x10016ed4]
mov ecx, dword [sym.imp.KERNEL32.dll_SuspendThread]
call ecx
mov edi, dword [ebp - 0x14]
lea eax, [ebp - 0x18]
push 0
push eax
push edi
push esi
mov esi, dword [ebp - 0x94]
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x100081f7
cmp dword [ebp - 0x18], edi
jne 0x100081f7
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [0x10016ed4]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov byte [0x10016f50], 1
mov byte [0x10016ed1], 1
mov byte [0x10016ed2], 1
lea ecx, [ebp - 0x48]
call fcn.10007a20
test al, al
je 0x10007e4e
push 0
push 0
push 2
push 0
push 0
push 0xc0000000
push str.DataMapleEzorsiaV2wzfiles.img
call esi
mov dword [ebp - 0x94], eax
test eax, eax
je 0x10007e40
push 0x10012d50
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa
mov edi, eax
push 0x67
push edi
mov dword [ebp - 0x14], edi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
push esi
push edi
call dword [sym.imp.KERNEL32.dll_LoadResource]
push esi
push dword [ebp - 0x14]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push edi
mov dword [ebp - 0x14], eax
call dword [sym.imp.KERNEL32.dll_LockResource]
push 2
mov esi, eax
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [0x10016ed4]
call dword [sym.imp.KERNEL32.dll_SuspendThread]
mov edi, dword [ebp - 0x14]
lea eax, [ebp - 0x18]
push 0
push eax
push edi
push esi
mov esi, dword [ebp - 0x94]
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x1000821a
cmp dword [ebp - 0x18], edi
jne 0x1000821a
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [0x10016ed4]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp 0x10007e40
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
push str.bad_WZ_file
push str.your_EzorsiaV2_UI.wz_file_doesnt_exist__please_re_download_EzorsiaV2_UI.wz_from_Ezorsia_v2_releases_at_https:__github.com_444Ro666_MapleEzorsia_v2
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
push str.bad_IMG_file
push str.Ezorsia_V2_has_detected_you_are_loading_from_.img__but_that_your_MapleEzorsiaV2wzfiles.img_file_doesnt_exist_in_your_Data_folder__please_re_download_MapleEzorsiaV2wzfiles.img_from_Ezorsia_v2_releases_at_https:__github.com_444Ro666_MapleEzorsia_v2
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, dword [ebp - 0x4c]
cmp ecx, 7
jbe 0x1000827c
mov edx, dword [ebp - 0x60]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10008272
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100083a5
push ecx
push edx
call fcn.100105d4
add esp, 8
mov ecx, dword [ebp - 0x64]
xor eax, eax
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
cmp ecx, 7
jbe 0x100082ca
mov edx, dword [ebp - 0x78]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100082c0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100083a5
push ecx
push edx
call fcn.100105d4
add esp, 8
mov ecx, dword [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 7
mov word [ebp - 0x78], ax
cmp ecx, 7
jbe 0x10008318
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000830e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100083a5
push ecx
push edx
call fcn.100105d4
add esp, 8
mov ecx, dword [ebp - 0x34]
xor eax, eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
mov word [ebp - 0x30], ax
cmp ecx, 7
jbe 0x10008362
mov edx, dword [ebp - 0x48]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10008358
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100083a5
push ecx
push edx
call fcn.100105d4
add esp, 8
mov ecx, dword [ebp - 0x7c]
xor eax, eax
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 7
mov word [ebp - 0x48], ax
cmp ecx, 7
jbe 0x100083b5
mov edx, dword [ebp - 0x90]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100083ab
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100083ab
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100105d4
add esp, 8
mov ecx, dword [ebp + 0x2c]
test ecx, ecx
je 0x100083cd
mov edx, dword [ecx]
lea eax, [ebp + 8]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10010289
mov esp, ebp
pop ebp
ret 0x28