Function at 0x100073d0
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100801fd
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, dword [0x1009c018]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push str.CG_Init___loading.._n
push 7
call fcn.1000ad60
call fcn.10007190
push str.preparing_to_load_perma_hooks_n
push 7
call fcn.1000ad60
add esp, 0x10
call fcn.100076a0
mov eax, dword [0x1009fcec]
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add eax, 0x1b3b5
mov dword [0x1009fd18], eax
lea eax, [ebp - 0x14]
push eax
push 0x40
push 5
push 0x4d76da
mov dword [0x1009fd2c], 0x4696b0
mov dword [0x1009fd28], 0x527670
mov dword [0x1009fd24], 0x46ca40
mov dword [0x1009fd20], 0x5f5360
mov dword [0x1009fd1c], 0x469120
call esi
mov eax, dword [0x1008fe68]
mov ecx, 0x4d76da
push 0
mov dword [ecx], eax
mov al, byte [0x1008fe6c]
mov byte [ecx + 4], al
push dword [ebp - 0x14]
push 5
push ecx
call esi
call fcn.1007cfb0
push 0x100083f0
push 0x1009fd2c
call fcn.1007c850
call fcn.1007d010
call fcn.1007cfb0
push 0x1007a700
push 0x1009fd28
call fcn.1007c850
call fcn.1007d010
call fcn.1007cfb0
push 0x1006ac30
push 0x1009fd24
call fcn.1007c850
call fcn.1007d010
call fcn.1007cfb0
push 0x1006ae50
push 0x1009fd20
call fcn.1007c850
call fcn.1007d010
cmp dword [0x1009fcec], 0
jne 0x1000750c
mov esi, 0x1009fd1c
mov edi, 0x10008510
jmp 0x10007516
mov esi, 0x1009fd18
mov edi, 0x10008550
call fcn.1007cfb0
push edi
push esi
call fcn.1007c850
call fcn.1007d010
push str.Successfully_loaded_image_resources_n
push 7
call fcn.1000ad60
add esp, 4
mov edx, 0x10078510
mov ecx, str.getbuttonpressed
call fcn.10078430
mov edx, 0x10078590
mov ecx, str.getforwardmove
call fcn.10078430
mov edx, 0x10078640
mov ecx, str.getrightmove
call fcn.10078430
mov edx, 0x100786f0
mov ecx, str.setvelocity
call fcn.10078430
mov edx, 0x100789d0
mov ecx, str.weaponexists
call fcn.10078350
mov edx, 0x10078800
mov ecx, str.worldtoscreen
call fcn.10078350
mov edx, 0x10078a60
mov ecx, str.getevarint
call fcn.10078350
mov edx, 0x10078af0
mov ecx, str.getevarfloat
call fcn.10078350
mov edx, 0x10078b80
mov ecx, str.getevar
call fcn.10078350
mov edx, 0x10078f60
mov ecx, str.writetoaddress
call fcn.10078350
mov edx, 0x100792f0
mov ecx, str.getaddressint
call fcn.10078350
mov edx, 0x10079450
mov ecx, str.getaddressfloat
call fcn.10078350
mov edx, 0x10079620
mov ecx, str.canloadposition
call fcn.10078350
mov edx, 0x100795b0
mov ecx, str.sendcommand
call fcn.10078350
add esp, 4
call fcn.1007cfb0
push 0x10079750
push 0x1009c0f4
call fcn.1007c850
call fcn.1007d010
call fcn.1007cfb0
push 0x10079680
push 0x1009c0f8
call fcn.1007c850
call fcn.1007d010
call fcn.1000bb80
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x14], esp
push 0x1009c104
call fcn.10008010
mov dword [ebp - 4], 0
mov dword [ebp - 4], 0xffffffff
call fcn.1000f4e0
push str.21_kej_extension_has_been_loaded__n
push 7
call fcn.1000ad60
add esp, 0x20
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.1007e605
mov esp, ebp
pop ebp
ret