Function at 0x1000d2a0
Capabilities:
Allocate or change rwx memory

Disassembly:
mov eax, 0x1008267d
call fcn.1005d694
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.1000fae7
add edi, 0x1c
sub ebx, 1
jne 0x1000d2c6
lea ebx, [esi + 0x1c01e0]
mov dword [ebp - 0x18], ebx
and dword [ebx], 0
and dword [ebx + 4], 0
push ebx
call fcn.1000d0be
pop ecx
mov dword [ebx], eax
lea eax, [ebp - 0x20]
mov dword [0x100e7cbc], 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.1000dfa9
mov edi, eax
cmp edi, 5
je 0x1000d341
cmp edi, 0xb
je 0x1000d33a
cmp edi, 0xf
je 0x1000d333
cmp edi, 0x14
jne 0x1000d346
call fcn.10003ed4
jmp 0x1000d346
call fcn.10011043
jmp 0x1000d346
call fcn.10011010
jmp 0x1000d346
call fcn.10010fdd
mov eax, ebx
lea ecx, [esi + 0x14c]
mov dword [ecx], eax
inc eax
lea ecx, [ecx + 0x1c]
cmp eax, 0xffff
jl 0x1000d34e
push 4
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d36f
mov dword [eax], vtable.CAudioSA.0
jmp 0x1000d371
mov eax, ebx
push 4
mov dword [esi + 0x1c01ac], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d38b
mov dword [eax], vtable.CWorldSA.0
jmp 0x1000d38d
mov eax, ebx
push 0x13888
mov dword [esi + 0x1c0160], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x1000d3b2
mov ecx, eax
call fcn.10014e23
jmp 0x1000d3b4
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0128], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d3d1
mov dword [eax], vtable.CClockSA.0
jmp 0x1000d3d3
mov eax, ebx
push 4
mov dword [esi + 0x1c013c], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x1000d3f5
mov ecx, eax
call fcn.10017515
jmp 0x1000d3f7
mov eax, ebx
push 0x14
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0134], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x1000d421
push 0xb6f028
mov ecx, eax
call fcn.10009feb
jmp 0x1000d423
mov eax, ebx
push 0x104
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0164], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x1000d44b
mov ecx, eax
call fcn.1000b68e
jmp 0x1000d44d
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0140], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x1000d475
mov ecx, eax
call fcn.1000a8e4
jmp 0x1000d477
mov eax, ebx
push 0x9b4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0144], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x1000d49f
mov ecx, eax
call fcn.100137e2
jmp 0x1000d4a1
mov eax, ebx
push 0xc4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c016c], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x1000d4c9
mov ecx, eax
call fcn.1000c6af
jmp 0x1000d4cb
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0174], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d4e8
mov dword [eax], vtable.CHudSA.0
jmp 0x1000d4ea
mov eax, ebx
push 0xf4
mov dword [esi + 0x1c0154], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x1000d50f
mov ecx, eax
call fcn.1000c983
jmp 0x1000d511
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c014c], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x1000d539
mov ecx, eax
call fcn.10007b79
jmp 0x1000d53b
mov eax, ebx
push 0x13c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0178], eax
call fcn.1005d445
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000d564
push 0xb73458
mov ecx, eax
call fcn.1000db8e
jmp 0x1000d566
mov eax, ebx
push 0x7d0
mov dword [esi + 0x1c01a0], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x1000d58b
mov ecx, eax
call fcn.1001d584
jmp 0x1000d58d
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01a4], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d5aa
mov dword [eax], vtable.CAERadioTrackManagerSA.0
jmp 0x1000d5ac
mov eax, ebx
push 4
mov dword [esi + 0x1c01a8], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d5c6
mov dword [eax], vtable.CWeatherSA.0
jmp 0x1000d5c8
mov eax, ebx
push 8
mov dword [esi + 0x1c015c], eax
call fcn.1005d445
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000d5ec
mov dword [eax], vtable.CMenuManagerSA.0
mov dword [eax + 4], 0xba6748
jmp 0x1000d5ee
mov eax, ebx
push 4
mov dword [esi + 0x1c01b0], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x1000d610
mov ecx, eax
call fcn.1001d526
jmp 0x1000d612
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01b4], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d62f
mov dword [eax], vtable.CStatsSA.0
jmp 0x1000d631
mov eax, ebx
push 4
mov dword [esi + 0x1c01b8], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d64b
mov dword [eax], vtable.CFontSA.0
jmp 0x1000d64d
mov eax, ebx
push 4
mov dword [esi + 0x1c01bc], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d667
mov dword [eax], vtable.CPathFindSA.0
jmp 0x1000d669
mov eax, ebx
push 1
mov dword [esi + 0x1c01c0], eax
call fcn.1005d445
push 8
mov dword [esi + 0x1c01c4], eax
call fcn.1005d445
pop ecx
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x1000d699
mov ecx, eax
call fcn.100196b6
jmp 0x1000d69b
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01c8], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x1000d6c0
mov ecx, eax
call fcn.100188dc
jmp 0x1000d6c2
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d0], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d6df
mov dword [eax], vtable.CCarEnterExitSA.0
jmp 0x1000d6e1
mov eax, ebx
push 4
mov dword [esi + 0x1c01d4], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x1000d703
mov ecx, eax
call fcn.1000b5e4
jmp 0x1000d705
mov eax, ebx
push 0x88
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d8], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x1000d72d
mov ecx, eax
call fcn.1000dbdd
jmp 0x1000d72f
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0130], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x1000d755
push edi
mov ecx, eax
call fcn.10017889
jmp 0x1000d757
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c017c], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x1000d77c
mov ecx, eax
call fcn.1000ef76
jmp 0x1000d77e
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0180], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d79b
mov dword [eax], vtable.CEventListSA.0
jmp 0x1000d79d
mov eax, ebx
push 0xd0
mov dword [esi + 0x1c0148], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x1000d7c7
push 0x96c048
mov ecx, eax
call fcn.1000eb28
jmp 0x1000d7c9
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0150], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x1000d7f4
push dword [esi + 0x1c01c8]
mov ecx, eax
call fcn.1001c837
jmp 0x1000d7f6
mov eax, ebx
push 0xe1c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01cc], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x1000d81e
mov ecx, eax
call fcn.10008081
jmp 0x1000d820
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0184], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d83d
mov dword [eax], vtable.CStreamingSA.0
jmp 0x1000d83f
mov eax, ebx
push 4
mov dword [esi + 0x1c0188], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d859
mov dword [eax], vtable.CVisibilityPluginsSA.0
jmp 0x1000d85b
mov eax, ebx
push 4
mov dword [esi + 0x1c018c], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d875
mov dword [eax], vtable.CKeyGenSA.0
jmp 0x1000d877
mov eax, ebx
push 4
mov dword [esi + 0x1c0190], eax
call fcn.1005d445
pop ecx
test eax, eax
je 0x1000d891
mov dword [eax], vtable.CRopesSA.0
jmp 0x1000d893
mov eax, ebx
push 8
mov dword [esi + 0x1c0194], eax
call fcn.1005d445
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000d8b7
mov dword [eax], vtable.CFxSA.0
mov dword [eax + 4], 0xa9ae00
jmp 0x1000d8b9
mov eax, ebx
push 0xe0cc
mov dword [esi + 0x1c0198], eax
call fcn.1005d445
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x1000d8de
mov ecx, eax
call fcn.100208eb
jmp 0x1000d8e0
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.1005d445
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000d91f
lea ecx, [esi + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], ebx
mov dword [eax + 4], ecx
jmp 0x1000d921
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 0x1000d8ff
mov eax, dword [ebp - 0x14]
add eax, 0xc0
mov esi, eax
xor ebx, ebx
push 0xc
call fcn.1005d445
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000d960
lea ecx, [ebx + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], edi
mov dword [eax + 4], ecx
jmp 0x1000d962
xor eax, eax
mov dword [esi], eax
inc ebx
add edi, 0x70
add esi, 4
cmp ebx, 0xb
jl 0x1000d940
cmp edi, 0xc8cdb8
jl 0x1000d93e
push 0xc
call fcn.1005d445
xor ebx, ebx
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000d99b
mov dword [eax], vtable.CPlayerInfoSA.0
mov dword [eax + 4], 0xb7cd98
mov dword [eax + 8], ebx
jmp 0x1000d99d
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.10004198
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.1000d214
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969152
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000da21
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], ecx
cmp eax, 0x1000
jb 0x1000da18
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.100038df
mov eax, dword [ebp - 0x10]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
push eax
push ecx
call fcn.1005d475
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.10004198
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000d214
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969160
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000da96
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000da8d
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.100038df
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.1005d475
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.10004198
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000d214
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969161
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000db0b
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000db02
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.100038df
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.1005d475
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.10004198
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000d214
mov eax, dword [eax]
mov dword [eax + 0x28], 0x96916c
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000db7d
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
cmp eax, 0x1000
jb 0x1000db74
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.100038df
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.1005d475
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