Function at 0x1000e26f
Capabilities:
Allocate or change rwx memory

Disassembly:
mov eax, 0x1007fb62
call fcn.1005ab48
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.10010ab6
add edi, 0x1c
sub ebx, 1
jne 0x1000e295
lea ebx, [esi + 0x1c01e0]
mov dword [ebp - 0x18], ebx
and dword [ebx], 0
and dword [ebx + 4], 0
push ebx
call fcn.1000e08d
pop ecx
mov dword [ebx], eax
lea eax, [ebp - 0x20]
mov dword [0x101228a0], 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.1000ef78
mov edi, eax
cmp edi, 5
je 0x1000e310
cmp edi, 0xb
je 0x1000e309
cmp edi, 0xf
je 0x1000e302
cmp edi, 0x14
jne 0x1000e315
call fcn.100048b1
jmp 0x1000e315
call fcn.10012012
jmp 0x1000e315
call fcn.10011fdf
jmp 0x1000e315
call fcn.10011fac
mov eax, ebx
lea ecx, [esi + 0x14c]
mov dword [ecx], eax
inc eax
lea ecx, [ecx + 0x1c]
cmp eax, 0xffff
jl 0x1000e31d
push 4
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e33e
mov dword [eax], vtable.CAudioSA.0
jmp 0x1000e340
mov eax, ebx
push 4
mov dword [esi + 0x1c01ac], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e35a
mov dword [eax], vtable.CWorldSA.0
jmp 0x1000e35c
mov eax, ebx
push 0x13888
mov dword [esi + 0x1c0160], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x1000e381
mov ecx, eax
call fcn.10015df2
jmp 0x1000e383
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0128], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e3a0
mov dword [eax], vtable.CClockSA.0
jmp 0x1000e3a2
mov eax, ebx
push 4
mov dword [esi + 0x1c013c], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x1000e3c4
mov ecx, eax
call fcn.100184e4
jmp 0x1000e3c6
mov eax, ebx
push 0x14
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0134], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x1000e3f0
push 0xb6f028
mov ecx, eax
call fcn.1000afbc
jmp 0x1000e3f2
mov eax, ebx
push 0x104
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0164], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x1000e41a
mov ecx, eax
call fcn.1000c65f
jmp 0x1000e41c
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0140], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x1000e444
mov ecx, eax
call fcn.1000b8b5
jmp 0x1000e446
mov eax, ebx
push 0x9b4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0144], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x1000e46e
mov ecx, eax
call fcn.100147b1
jmp 0x1000e470
mov eax, ebx
push 0xc4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c016c], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x1000e498
mov ecx, eax
call fcn.1000d67e
jmp 0x1000e49a
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0174], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e4b7
mov dword [eax], vtable.CHudSA.0
jmp 0x1000e4b9
mov eax, ebx
push 0xf4
mov dword [esi + 0x1c0154], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x1000e4de
mov ecx, eax
call fcn.1000d952
jmp 0x1000e4e0
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c014c], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x1000e508
mov ecx, eax
call fcn.10008b4a
jmp 0x1000e50a
mov eax, ebx
push 0x13c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0178], eax
call fcn.1005a8fa
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e533
push 0xb73458
mov ecx, eax
call fcn.1000eb5d
jmp 0x1000e535
mov eax, ebx
push 0x7d0
mov dword [esi + 0x1c01a0], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x1000e55a
mov ecx, eax
call fcn.1001e553
jmp 0x1000e55c
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01a4], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e579
mov dword [eax], vtable.CAERadioTrackManagerSA.0
jmp 0x1000e57b
mov eax, ebx
push 4
mov dword [esi + 0x1c01a8], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e595
mov dword [eax], vtable.CWeatherSA.0
jmp 0x1000e597
mov eax, ebx
push 8
mov dword [esi + 0x1c015c], eax
call fcn.1005a8fa
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e5bb
mov dword [eax], vtable.CMenuManagerSA.0
mov dword [eax + 4], 0xba6748
jmp 0x1000e5bd
mov eax, ebx
push 4
mov dword [esi + 0x1c01b0], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x1000e5df
mov ecx, eax
call fcn.1001e4f5
jmp 0x1000e5e1
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01b4], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e5fe
mov dword [eax], vtable.CStatsSA.0
jmp 0x1000e600
mov eax, ebx
push 4
mov dword [esi + 0x1c01b8], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e61a
mov dword [eax], vtable.CFontSA.0
jmp 0x1000e61c
mov eax, ebx
push 4
mov dword [esi + 0x1c01bc], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e636
mov dword [eax], vtable.CPathFindSA.0
jmp 0x1000e638
mov eax, ebx
push 1
mov dword [esi + 0x1c01c0], eax
call fcn.1005a8fa
push 8
mov dword [esi + 0x1c01c4], eax
call fcn.1005a8fa
pop ecx
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x1000e668
mov ecx, eax
call fcn.1001a685
jmp 0x1000e66a
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01c8], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x1000e68f
mov ecx, eax
call fcn.100198ab
jmp 0x1000e691
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d0], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e6ae
mov dword [eax], vtable.CCarEnterExitSA.0
jmp 0x1000e6b0
mov eax, ebx
push 4
mov dword [esi + 0x1c01d4], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x1000e6d2
mov ecx, eax
call fcn.1000c5b5
jmp 0x1000e6d4
mov eax, ebx
push 0x88
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d8], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x1000e6fc
mov ecx, eax
call fcn.1000ebac
jmp 0x1000e6fe
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0130], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x1000e724
push edi
mov ecx, eax
call fcn.10018858
jmp 0x1000e726
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c017c], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x1000e74b
mov ecx, eax
call fcn.1000ff45
jmp 0x1000e74d
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0180], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e76a
mov dword [eax], vtable.CEventListSA.0
jmp 0x1000e76c
mov eax, ebx
push 0xd0
mov dword [esi + 0x1c0148], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x1000e796
push 0x96c048
mov ecx, eax
call fcn.1000faf7
jmp 0x1000e798
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0150], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x1000e7c3
push dword [esi + 0x1c01c8]
mov ecx, eax
call fcn.1001d806
jmp 0x1000e7c5
mov eax, ebx
push 0xe1c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01cc], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x1000e7ed
mov ecx, eax
call fcn.10009052
jmp 0x1000e7ef
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0184], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e80c
mov dword [eax], vtable.CStreamingSA.0
jmp 0x1000e80e
mov eax, ebx
push 4
mov dword [esi + 0x1c0188], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e828
mov dword [eax], vtable.CVisibilityPluginsSA.0
jmp 0x1000e82a
mov eax, ebx
push 4
mov dword [esi + 0x1c018c], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e844
mov dword [eax], vtable.CKeyGenSA.0
jmp 0x1000e846
mov eax, ebx
push 4
mov dword [esi + 0x1c0190], eax
call fcn.1005a8fa
pop ecx
test eax, eax
je 0x1000e860
mov dword [eax], vtable.CRopesSA.0
jmp 0x1000e862
mov eax, ebx
push 8
mov dword [esi + 0x1c0194], eax
call fcn.1005a8fa
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e886
mov dword [eax], vtable.CFxSA.0
mov dword [eax + 4], 0xa9ae00
jmp 0x1000e888
mov eax, ebx
push 0xe0cc
mov dword [esi + 0x1c0198], eax
call fcn.1005a8fa
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x1000e8ad
mov ecx, eax
call fcn.100218bd
jmp 0x1000e8af
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.1005a8fa
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e8ee
lea ecx, [esi + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], ebx
mov dword [eax + 4], ecx
jmp 0x1000e8f0
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 0x1000e8ce
mov eax, dword [ebp - 0x14]
add eax, 0xc0
mov esi, eax
xor ebx, ebx
push 0xc
call fcn.1005a8fa
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e92f
lea ecx, [ebx + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], edi
mov dword [eax + 4], ecx
jmp 0x1000e931
xor eax, eax
mov dword [esi], eax
inc ebx
add edi, 0x70
add esi, 4
cmp ebx, 0xb
jl 0x1000e90f
cmp edi, 0xc8cdb8
jl 0x1000e90d
push 0xc
call fcn.1005a8fa
xor ebx, ebx
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e96a
mov dword [eax], vtable.CPlayerInfoSA.0
mov dword [eax + 4], 0xb7cd98
mov dword [eax + 8], ebx
jmp 0x1000e96c
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.10004bfd
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.1000e1e3
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969152
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000e9f0
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], ecx
cmp eax, 0x1000
jb 0x1000e9e7
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.100041ba
mov eax, dword [ebp - 0x10]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
push eax
push ecx
call fcn.1005a92a
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.10004bfd
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000e1e3
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969160
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000ea65
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000ea5c
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.100041ba
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.1005a92a
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.10004bfd
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000e1e3
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969161
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000eada
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000ead1
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.100041ba
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.1005a92a
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.10004bfd
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000e1e3
mov eax, dword [eax]
mov dword [eax + 0x28], 0x96916c
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000eb4c
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
cmp eax, 0x1000
jb 0x1000eb43
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.100041ba
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.1005a92a
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