Function at 0x1000db9e
Capabilities:
Allocate or change rwx memory

Disassembly:
mov eax, 0x10078a80
call fcn.100521c0
sub esp, 0x2c
push ebx
push esi
mov esi, ecx
mov ebx, 0xffff
push edi
mov dword [ebp - 0x14], esi
mov dword [esi], vtable.CGameSA.0
lea edi, [esi + 0x144]
mov ecx, edi
call fcn.100103e5
add edi, 0x1c
sub ebx, 1
jne 0x1000dbc4
lea ebx, [esi + 0x1c01e0]
mov dword [ebp - 0x18], ebx
and dword [ebx], 0
and dword [ebx + 4], 0
push ebx
call fcn.1000d9bc
pop ecx
mov dword [ebx], eax
lea eax, [ebp - 0x20]
mov dword [0x1011a4d4], esi
push eax
push 0x40
push 0x4a3000
xor ebx, ebx
push 0x401000
mov dword [ebp - 4], ebx
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov ecx, esi
call fcn.1000e8a7
mov edi, eax
cmp edi, 5
je 0x1000dc3f
cmp edi, 0xb
je 0x1000dc38
cmp edi, 0xf
je 0x1000dc31
cmp edi, 0x14
jne 0x1000dc44
call fcn.10004b8c
jmp 0x1000dc44
call fcn.10011941
jmp 0x1000dc44
call fcn.1001190e
jmp 0x1000dc44
call fcn.100118db
mov eax, ebx
lea ecx, [esi + 0x14c]
mov dword [ecx], eax
inc eax
lea ecx, [ecx + 0x1c]
cmp eax, 0xffff
jl 0x1000dc4c
push 4
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000dc6d
mov dword [eax], vtable.CAudioSA.0
jmp 0x1000dc6f
mov eax, ebx
push 4
mov dword [esi + 0x1c01ac], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000dc89
mov dword [eax], vtable.CWorldSA.0
jmp 0x1000dc8b
mov eax, ebx
push 0x13888
mov dword [esi + 0x1c0160], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x1000dcb0
mov ecx, eax
call fcn.10015721
jmp 0x1000dcb2
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0128], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000dccf
mov dword [eax], vtable.CClockSA.0
jmp 0x1000dcd1
mov eax, ebx
push 4
mov dword [esi + 0x1c013c], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x1000dcf3
mov ecx, eax
call fcn.10017e13
jmp 0x1000dcf5
mov eax, ebx
push 0x14
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0134], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x1000dd1f
push 0xb6f028
mov ecx, eax
call fcn.1000a8e9
jmp 0x1000dd21
mov eax, ebx
push 0x104
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0164], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x1000dd49
mov ecx, eax
call fcn.1000bf8c
jmp 0x1000dd4b
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0140], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x1000dd73
mov ecx, eax
call fcn.1000b1e2
jmp 0x1000dd75
mov eax, ebx
push 0x9b4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0144], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x1000dd9d
mov ecx, eax
call fcn.100140e0
jmp 0x1000dd9f
mov eax, ebx
push 0xc4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c016c], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x1000ddc7
mov ecx, eax
call fcn.1000cfad
jmp 0x1000ddc9
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0174], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000dde6
mov dword [eax], vtable.CHudSA.0
jmp 0x1000dde8
mov eax, ebx
push 0xf4
mov dword [esi + 0x1c0154], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x1000de0d
mov ecx, eax
call fcn.1000d281
jmp 0x1000de0f
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c014c], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x1000de37
mov ecx, eax
call fcn.10008477
jmp 0x1000de39
mov eax, ebx
push 0x13c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0178], eax
call fcn.10051f72
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000de62
push 0xb73458
mov ecx, eax
call fcn.1000e48c
jmp 0x1000de64
mov eax, ebx
push 0x7d0
mov dword [esi + 0x1c01a0], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x1000de89
mov ecx, eax
call fcn.1001de82
jmp 0x1000de8b
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01a4], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000dea8
mov dword [eax], vtable.CAERadioTrackManagerSA.0
jmp 0x1000deaa
mov eax, ebx
push 4
mov dword [esi + 0x1c01a8], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000dec4
mov dword [eax], vtable.CWeatherSA.0
jmp 0x1000dec6
mov eax, ebx
push 8
mov dword [esi + 0x1c015c], eax
call fcn.10051f72
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000deea
mov dword [eax], vtable.CMenuManagerSA.0
mov dword [eax + 4], 0xba6748
jmp 0x1000deec
mov eax, ebx
push 4
mov dword [esi + 0x1c01b0], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x1000df0e
mov ecx, eax
call fcn.1001de24
jmp 0x1000df10
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01b4], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000df2d
mov dword [eax], vtable.CStatsSA.0
jmp 0x1000df2f
mov eax, ebx
push 4
mov dword [esi + 0x1c01b8], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000df49
mov dword [eax], vtable.CFontSA.0
jmp 0x1000df4b
mov eax, ebx
push 4
mov dword [esi + 0x1c01bc], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000df65
mov dword [eax], vtable.CPathFindSA.0
jmp 0x1000df67
mov eax, ebx
push 1
mov dword [esi + 0x1c01c0], eax
call fcn.10051f72
push 8
mov dword [esi + 0x1c01c4], eax
call fcn.10051f72
pop ecx
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x1000df97
mov ecx, eax
call fcn.10019fb4
jmp 0x1000df99
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01c8], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x1000dfbe
mov ecx, eax
call fcn.100191da
jmp 0x1000dfc0
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d0], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000dfdd
mov dword [eax], vtable.CCarEnterExitSA.0
jmp 0x1000dfdf
mov eax, ebx
push 4
mov dword [esi + 0x1c01d4], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x1000e001
mov ecx, eax
call fcn.1000bee2
jmp 0x1000e003
mov eax, ebx
push 0x88
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d8], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x1000e02b
mov ecx, eax
call fcn.1000e4db
jmp 0x1000e02d
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0130], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x1000e053
push edi
mov ecx, eax
call fcn.10018187
jmp 0x1000e055
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c017c], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x1000e07a
mov ecx, eax
call fcn.1000f874
jmp 0x1000e07c
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0180], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000e099
mov dword [eax], vtable.CEventListSA.0
jmp 0x1000e09b
mov eax, ebx
push 0xd0
mov dword [esi + 0x1c0148], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x1000e0c5
push 0x96c048
mov ecx, eax
call fcn.1000f426
jmp 0x1000e0c7
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0150], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x1000e0f2
push dword [esi + 0x1c01c8]
mov ecx, eax
call fcn.1001d135
jmp 0x1000e0f4
mov eax, ebx
push 0xe1c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01cc], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x1000e11c
mov ecx, eax
call fcn.1000897f
jmp 0x1000e11e
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0184], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000e13b
mov dword [eax], vtable.CStreamingSA.0
jmp 0x1000e13d
mov eax, ebx
push 4
mov dword [esi + 0x1c0188], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000e157
mov dword [eax], vtable.CVisibilityPluginsSA.0
jmp 0x1000e159
mov eax, ebx
push 4
mov dword [esi + 0x1c018c], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000e173
mov dword [eax], vtable.CKeyGenSA.0
jmp 0x1000e175
mov eax, ebx
push 4
mov dword [esi + 0x1c0190], eax
call fcn.10051f72
pop ecx
test eax, eax
je 0x1000e18f
mov dword [eax], vtable.CRopesSA.0
jmp 0x1000e191
mov eax, ebx
push 8
mov dword [esi + 0x1c0194], eax
call fcn.10051f72
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e1b5
mov dword [eax], vtable.CFxSA.0
mov dword [eax + 4], 0xa9ae00
jmp 0x1000e1b7
mov eax, ebx
push 0xe0cc
mov dword [esi + 0x1c0198], eax
call fcn.10051f72
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x1000e1dc
mov ecx, eax
call fcn.100211ec
jmp 0x1000e1de
mov eax, ebx
mov dword [esi + 0x1c019c], eax
mov edi, 0xc8bf48
lea eax, [esi + 4]
mov dword [ebp - 0x18], ebx
mov esi, dword [ebp - 0x18]
mov byte [ebp - 4], bl
mov ebx, 0xc8aab8
mov dword [ebp - 0x10], eax
push 0xc
call fcn.10051f72
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e21d
lea ecx, [esi + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], ebx
mov dword [eax + 4], ecx
jmp 0x1000e21f
xor eax, eax
mov ecx, dword [ebp - 0x10]
add ebx, 0x70
inc esi
mov dword [ecx], eax
add ecx, 4
mov dword [ebp - 0x10], ecx
cmp ebx, edi
jl 0x1000e1fd
mov eax, dword [ebp - 0x14]
add eax, 0xc0
mov esi, eax
xor ebx, ebx
push 0xc
call fcn.10051f72
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e25e
lea ecx, [ebx + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], edi
mov dword [eax + 4], ecx
jmp 0x1000e260
xor eax, eax
mov dword [esi], eax
inc ebx
add edi, 0x70
add esi, 4
cmp ebx, 0xb
jl 0x1000e23e
cmp edi, 0xc8cdb8
jl 0x1000e23c
push 0xc
call fcn.10051f72
xor ebx, ebx
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e299
mov dword [eax], vtable.CPlayerInfoSA.0
mov dword [eax + 4], 0xb7cd98
mov dword [eax + 8], ebx
jmp 0x1000e29b
mov eax, ebx
mov esi, dword [ebp - 0x14]
lea ecx, [ebp - 0x38]
push 9
mov dword [ebp - 0x38], ebx
push str.hovercars
mov dword [esi + 0x1c012c], eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], bl
call fcn.10005278
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x1c]
lea edi, [esi + 0x1c01e0]
push eax
mov ecx, edi
call fcn.1000db12
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969152
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000e31f
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], ecx
cmp eax, 0x1000
jb 0x1000e316
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.1000428f
mov eax, dword [ebp - 0x10]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
push eax
push ecx
call fcn.10051fa2
pop ecx
pop ecx
push 7
mov dword [ebp - 0x38], ebx
lea ecx, [ebp - 0x38]
push str.aircars
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], bl
call fcn.10005278
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000db12
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969160
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000e394
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000e38b
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.1000428f
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.10051fa2
pop ecx
pop ecx
push 0xa
mov dword [ebp - 0x38], ebx
lea ecx, [ebp - 0x38]
push str.extrabunny
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], bl
call fcn.10005278
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000db12
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969161
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000e409
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000e400
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.1000428f
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.10051fa2
pop ecx
pop ecx
push 9
mov dword [ebp - 0x38], ebx
lea ecx, [ebp - 0x38]
push str.extrajump
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], bl
call fcn.10005278
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000db12
mov eax, dword [eax]
mov dword [eax + 0x28], 0x96916c
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000e47b
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
cmp eax, 0x1000
jb 0x1000e472
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.1000428f
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.10051fa2
pop ecx
pop ecx
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret