Function at 0x18007f020
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
lea eax, [r8 - 7]
mov rsi, rcx
mov dword [rsp + 0x90], eax
cmp r8d, eax
jbe 0x18007f3b0
mov r12d, dword [rsp + 0x90]
lea ebx, [r8 - 0x1d]
mov r15, qword [rsp + 0x98]
lea r8, [0x180000000]
mov r13d, dword [rsp + 0x90]
mov ecx, eax
mov dword [rsp + 0x20], ebx
nop word [rax + rax]
cmp ebx, 0x12
ja case.default.0x18007f094
mov ecx, dword [r8 + rbx*4 + 0x7f3d4]
add rcx, r8
jmp rcx
mov rcx, qword [0x1800bf750]
lea rdx, str.F_6F0_F_F_
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800bf768], rax
jmp 0x18007f389
movzx eax, word [rdx]
or byte [rsi + 0x30], 4
mov word [rsi + 0x98], ax
jmp case.0x18007f094.5
lea rcx, str.winmm.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1800bf750], rax
test rax, rax
je 0x18007f3c9
lea rdx, str.av_parser_init
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800bf750]
lea rdx, str.joyGetPos
mov qword [0x1800bf758], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800bf760], rax
jmp 0x18007f389
mov rcx, qword [0x1800bf778]
test rcx, rcx
je 0x18007f13d
lea rdx, str.global_property.
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800bf780], rax
lea rcx, str.715_28_L
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1800bf788], rax
test rax, rax
je 0x18007f389
lea rdx, str.id___23__id___23__4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800bf790], rax
jmp 0x18007f389
test rsi, rsi
je case.0x18007f094.5
mov eax, 0x121
mov dword [rsp + 0x98], eax
nop dword [rax + rax]
sub eax, 0x120
je 0x18007f30d
cmp eax, 1
jne 0x18007f316
mov rdi, qword [rsi]
mov ebx, 0x89
nop dword [rax]
mov eax, ebx
sub eax, 0x66
je 0x18007f245
sub eax, 0x23
je 0x18007f204
sub eax, 0xa2
je 0x18007f1f6
sub eax, 0x75f7
je 0x18007f1e2
cmp eax, 0x75f7
jne 0x18007f233
movsx eax, byte [r15]
btr eax, r13d
mov byte [r15], al
jmp 0x18007f233
mov r13d, dword [pe_dos_header]
and r13d, 7
mov r15d, r12d
add r15, rdi
jmp 0x18007f233
mov r12d, dword [pe_dos_header]
shr r12d, 3
jmp 0x18007f233
test rdi, rdi
je 0x18007f233
mov rdx, qword [rdi]
xor r8d, r8d
mov ecx, 0x97
call fcn.180079da0
mov rdx, qword [rdi + 8]
xor r8d, r8d
mov ecx, 0x97
call fcn.180079da0
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add ebx, 0x360d
cmp ebx, 0x10e41
jbe 0x18007f1b0
mov rdx, qword [rsi + 8]
xor r8d, r8d
mov ecx, 0x97
call fcn.180079da0
mov rsi, qword [rsi + 0x10]
mov r14d, 0xf5
mov eax, r14d
sub eax, 0xf3
je 0x18007f2d3
cmp eax, 2
jne 0x18007f2e2
test rsi, rsi
je 0x18007f2e2
mov ebp, 0x2b
nop dword [rax]
mov eax, ebp
sub eax, 0x29
je 0x18007f2c1
sub eax, 1
je 0x18007f2b7
cmp eax, 1
jne 0x18007f2ca
xor edi, edi
cmp dword [rsi + 8], edi
jle 0x18007f2ca
xor ebx, ebx
nop word [rax + rax]
mov rcx, qword [rsi]
mov rcx, qword [rcx + rbx]
call qword [rsi + 0x10]
inc edi
lea rbx, [rbx + 8]
cmp edi, dword [rsi + 8]
jl 0x18007f2a0
jmp 0x18007f2ca
mov rcx, qword [rsi]
test rcx, rcx
je 0x18007f2ca
jmp 0x18007f2c4
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
dec ebp
cmp ebp, 0x28
ja 0x18007f280
jmp 0x18007f2e2
xor edx, edx
xor ecx, ecx
mov r8d, 0x107
call fcn.1800838a0
dec r14d
cmp r14d, 0xf3
ja 0x18007f260
mov rsi, qword [rsp + 0x80]
xor edx, edx
xor ecx, ecx
mov r9, qword [rsi + 0x18]
lea r8d, [rdx + 0x1d]
call fcn.180032660
jmp 0x18007f316
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov eax, dword [rsp + 0x98]
dec eax
mov dword [rsp + 0x98], eax
cmp eax, 0x11f
ja 0x18007f190
mov ebx, dword [rsp + 0x20]
jmp 0x18007f389
mov rcx, qword [0x1800bf750]
lea rdx, str.reg:
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1800bf758], 0
mov qword [0x1800bf770], rax
je 0x18007f3c9
cmp qword [0x1800bf760], 0
je 0x18007f3c9
cmp qword [0x1800bf768], 0
je 0x18007f3c9
test rax, rax
je 0x18007f3c9
lea rcx, str.JALRS16_MM
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1800bf778], rax
mov rdx, qword [rsp + 0x88]
lea r8, [0x180000000]
mov ecx, dword [rsp + 0x90]
dec ebx
mov dword [rsp + 0x20], ebx
lea eax, [rbx + 0x1d]
cmp eax, ecx
ja 0x18007f080
movzx eax, byte [rsp + 0x90]
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
xor al, al
jmp 0x18007f3b8
mov al, 1
jmp 0x18007f3b8