Function at 0x140003c20
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xa0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x4f], rax
xor esi, esi
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003c67
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003c84
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003d2e
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003d2e
mov ecx, 0x12
call rax
test ax, ax
jns 0x140003d2e
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003cc1
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003cda
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003d2e
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003d2e
mov ecx, 0x31
call rax
test ax, ax
jns 0x140003d2e
cmp byte [0x14000bb1b], sil
sete al
mov byte [0x14000bb1b], al
lea rcx, [0x140008718]
lea rdx, [0x140008730]
cmp al, 1
cmove rdx, rcx
xor r9d, r9d
lea r8, [0x140008700]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov bl, 1
jmp 0x140003d30
xor bl, bl
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003d4b
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003d68
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003e16
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003e16
mov ecx, 0x12
call rax
test ax, ax
jns 0x140003e16
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003da5
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003dbe
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003e16
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003e16
mov ecx, 0x32
call rax
test ax, ax
jns 0x140003e16
test bl, bl
jne 0x140003e18
cmp byte [0x14000b718], sil
sete al
mov byte [0x14000b718], al
lea rcx, [0x140008748]
lea rdx, [0x140008760]
cmp al, 1
cmove rdx, rcx
xor r9d, r9d
lea r8, [0x140008700]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov bl, 1
jmp 0x140003e18
xor bl, bl
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003e33
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003e50
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003efe
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003efe
mov ecx, 0x12
call rax
test ax, ax
jns 0x140003efe
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003e8d
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003ea6
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003efe
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003efe
mov ecx, 0x33
call rax
test ax, ax
jns 0x140003efe
test bl, bl
jne 0x140003f00
cmp byte [0x14000b719], sil
sete al
mov byte [0x14000b719], al
lea rcx, [0x140008778]
lea rdx, [0x140008790]
cmp al, 1
cmove rdx, rcx
xor r9d, r9d
lea r8, [0x140008700]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov bl, 1
jmp 0x140003f00
xor bl, bl
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003f1b
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003f38
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003fe6
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003fe6
mov ecx, 0x12
call rax
test ax, ax
jns 0x140003fe6
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003f75
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140003f8e
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140003fe6
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140003fe6
mov ecx, 0x34
call rax
test ax, ax
jns 0x140003fe6
test bl, bl
jne 0x140003fe8
cmp byte [0x14000b71a], sil
sete al
mov byte [0x14000b71a], al
lea rcx, [0x1400087a8]
lea rdx, [0x1400087c0]
cmp al, 1
cmove rdx, rcx
xor r9d, r9d
lea r8, [0x140008700]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov bl, 1
jmp 0x140003fe8
xor bl, bl
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov edi, 0x2d
test rax, rax
je 0x140004008
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140004025
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x1400041d8
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400041d8
mov ecx, 0x26
call rax
test ax, ax
jns 0x1400041d8
test bl, bl
jne 0x1400041da
mov r8d, dword [0x14000b710]
add r8d, 0x14
mov dword [0x14000b710], r8d
cmp r8d, 0xa0
jle 0x140004077
mov r8d, 0x14
mov dword [0x14000b710], r8d
lea r9, [rbp + 0x49]
test r8d, r8d
jns 0x1400040d0
neg r8d
nop dword [rax]
nop word [rax + rax]
sub r9, 2
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dx
shl ax, 2
lea ecx, [rax + rdx]
add cx, cx
sub r8w, cx
add r8w, 0x30
mov word [r9], r8w
mov r8d, edx
test edx, edx
jne 0x140004090
add r9, 0xfffffffffffffffe
mov word [r9], di
jmp 0x140004100
sub r9, 2
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dx
shl ax, 2
lea ecx, [rax + rdx]
add cx, cx
sub r8w, cx
add r8w, 0x30
mov word [r9], r8w
mov r8d, edx
test edx, edx
jne 0x1400040d0
lea r8, [rbp + 0x49]
mov rdx, r9
lea rcx, [rbp - 1]
call fcn.140005b10
nop
lea r8, [rbp - 1]
lea rcx, [rbp - 0x29]
call fcn.140005580
cmp qword [rax + 0x18], 7
jbe 0x140004128
mov rax, qword [rax]
xor r9d, r9d
lea r8, str.CrossFire_20_160_
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rdx, qword [rbp - 0x11]
cmp rdx, 7
jbe 0x140004180
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000417b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000417b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000669c
movdqa xmm0, xmmword [0x140008960]
movdqu xmmword [rbp - 0x19], xmm0
mov word [rbp - 0x29], si
mov rdx, qword [rbp + 0x17]
cmp rdx, 7
jbe 0x1400041d4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400041cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400041cf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000669c
mov bl, 1
jmp 0x1400041da
xor bl, bl
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x1400041f5
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140004212
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x1400043b8
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400043b8
mov ecx, 0x28
call rax
test ax, ax
jns 0x1400043b8
test bl, bl
jne 0x1400043ba
mov r8d, dword [0x14000b710]
sub r8d, 0x14
mov dword [0x14000b710], r8d
cmp r8d, 0x14
jge 0x140004261
mov r8d, 0xa0
mov dword [0x14000b710], r8d
lea r9, [rbp + 0x49]
test r8d, r8d
jns 0x1400042b0
neg r8d
nop dword [rax]
sub r9, 2
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dx
shl ax, 2
lea ecx, [rax + rdx]
add cx, cx
sub r8w, cx
add r8w, 0x30
mov word [r9], r8w
mov r8d, edx
test edx, edx
jne 0x140004270
add r9, 0xfffffffffffffffe
mov word [r9], di
jmp 0x1400042e0
sub r9, 2
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dx
shl ax, 2
lea ecx, [rax + rdx]
add cx, cx
sub r8w, cx
add r8w, 0x30
mov word [r9], r8w
mov r8d, edx
test edx, edx
jne 0x1400042b0
lea r8, [rbp + 0x49]
mov rdx, r9
lea rcx, [rbp - 1]
call fcn.140005b10
nop
lea r8, [rbp - 1]
lea rcx, [rbp - 0x29]
call fcn.140005580
cmp qword [rax + 0x18], 7
jbe 0x140004308
mov rax, qword [rax]
xor r9d, r9d
lea r8, str.CrossFire_20_160_
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rdx, qword [rbp - 0x11]
cmp rdx, 7
jbe 0x140004360
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000435b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000435b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000669c
movdqa xmm0, xmmword [0x140008960]
movdqu xmmword [rbp - 0x19], xmm0
mov word [rbp - 0x29], si
mov rdx, qword [rbp + 0x17]
cmp rdx, 7
jbe 0x1400043b4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400043af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400043af
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000669c
mov bl, 1
jmp 0x1400043ba
xor bl, bl
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x1400043d5
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x1400043ee
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x14000442e
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14000442e
mov ecx, 0x27
call rax
test ax, ax
jns 0x14000442e
test bl, bl
jne 0x140004430
mov eax, dword [0x14000b714]
add eax, 5
mov dword [0x14000b714], eax
cmp eax, 0x32
jle 0x14000442a
mov dword [0x14000b714], 5
mov bl, 1
jmp 0x140004430
xor bl, bl
lea rcx, str.win32u.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x14000444b
lea rdx, str.NtUserGetAsyncKeyState
jmp 0x140004464
lea rcx, str.user32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x1400044a0
lea rdx, str.GetAsyncKeyState
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400044a0
mov ecx, 0x25
call rax
test ax, ax
jns 0x1400044a0
test bl, bl
jne 0x1400044a0
mov eax, dword [0x14000b714]
add eax, 5
mov dword [0x14000b714], eax
cmp eax, 0xa
jle 0x1400044a0
mov dword [0x14000b714], 5
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.140006640
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret