Function at 0x1000e34d
Capabilities:
Allocate or change rwx memory

Disassembly:
mov eax, 0x10074d28
call fcn.1004e918
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.10010b5c
add edi, 0x1c
sub ebx, 1
jne 0x1000e373
lea ebx, [esi + 0x1c01e0]
mov dword [ebp - 0x18], ebx
and dword [ebx], 0
and dword [ebx + 4], 0
push ebx
call fcn.1000815c
pop ecx
mov dword [ebx], eax
lea eax, [ebp - 0x20]
mov dword [0x10116bb8], 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.1000f056
mov edi, eax
cmp edi, 5
je 0x1000e3ee
cmp edi, 0xb
je 0x1000e3e7
cmp edi, 0xf
je 0x1000e3e0
cmp edi, 0x14
jne 0x1000e3f3
call fcn.1000644c
jmp 0x1000e3f3
call fcn.100120b8
jmp 0x1000e3f3
call fcn.10012085
jmp 0x1000e3f3
call fcn.10012052
mov eax, ebx
lea ecx, [esi + 0x14c]
mov dword [ecx], eax
inc eax
lea ecx, [ecx + 0x1c]
cmp eax, 0xffff
jl 0x1000e3fb
push 4
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e41c
mov dword [eax], vtable.CAudioSA.0
jmp 0x1000e41e
mov eax, ebx
push 4
mov dword [esi + 0x1c01ac], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e438
mov dword [eax], vtable.CWorldSA.0
jmp 0x1000e43a
mov eax, ebx
push 0x13888
mov dword [esi + 0x1c0160], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x1000e45f
mov ecx, eax
call fcn.10015e98
jmp 0x1000e461
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0128], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e47e
mov dword [eax], vtable.CClockSA.0
jmp 0x1000e480
mov eax, ebx
push 4
mov dword [esi + 0x1c013c], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x1000e4a2
mov ecx, eax
call fcn.1001858a
jmp 0x1000e4a4
mov eax, ebx
push 0x14
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0134], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x1000e4ce
push 0xb6f028
mov ecx, eax
call fcn.1000b0e6
jmp 0x1000e4d0
mov eax, ebx
push 0x104
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0164], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x1000e4f8
mov ecx, eax
call fcn.1000c789
jmp 0x1000e4fa
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0140], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x1000e522
mov ecx, eax
call fcn.1000b9df
jmp 0x1000e524
mov eax, ebx
push 0x9b4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0144], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x1000e54c
mov ecx, eax
call fcn.10014857
jmp 0x1000e54e
mov eax, ebx
push 0xc4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c016c], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x1000e576
mov ecx, eax
call fcn.1000d7a6
jmp 0x1000e578
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0174], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e595
mov dword [eax], vtable.CHudSA.0
jmp 0x1000e597
mov eax, ebx
push 0xf4
mov dword [esi + 0x1c0154], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x1000e5bc
mov ecx, eax
call fcn.1000da7a
jmp 0x1000e5be
mov eax, ebx
push 0x84
mov byte [ebp - 4], bl
mov dword [esi + 0x1c014c], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x1000e5e6
mov ecx, eax
call fcn.10008c74
jmp 0x1000e5e8
mov eax, ebx
push 0x13c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0178], eax
call fcn.1004e8da
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e611
push 0xb73458
mov ecx, eax
call fcn.1000ec3b
jmp 0x1000e613
mov eax, ebx
push 0x7d0
mov dword [esi + 0x1c01a0], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x1000e638
mov ecx, eax
call fcn.1001e5f9
jmp 0x1000e63a
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01a4], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e657
mov dword [eax], vtable.CAERadioTrackManagerSA.0
jmp 0x1000e659
mov eax, ebx
push 4
mov dword [esi + 0x1c01a8], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e673
mov dword [eax], vtable.CWeatherSA.0
jmp 0x1000e675
mov eax, ebx
push 8
mov dword [esi + 0x1c015c], eax
call fcn.1004e8da
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e699
mov dword [eax], vtable.CMenuManagerSA.0
mov dword [eax + 4], 0xba6748
jmp 0x1000e69b
mov eax, ebx
push 4
mov dword [esi + 0x1c01b0], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x1000e6bd
mov ecx, eax
call fcn.1001e59b
jmp 0x1000e6bf
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01b4], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e6dc
mov dword [eax], vtable.CStatsSA.0
jmp 0x1000e6de
mov eax, ebx
push 4
mov dword [esi + 0x1c01b8], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e6f8
mov dword [eax], vtable.CFontSA.0
jmp 0x1000e6fa
mov eax, ebx
push 4
mov dword [esi + 0x1c01bc], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e714
mov dword [eax], vtable.CPathFindSA.0
jmp 0x1000e716
mov eax, ebx
push 1
mov dword [esi + 0x1c01c0], eax
call fcn.1004e8da
push 8
mov dword [esi + 0x1c01c4], eax
call fcn.1004e8da
pop ecx
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x1000e746
mov ecx, eax
call fcn.1001a72b
jmp 0x1000e748
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01c8], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x1000e76d
mov ecx, eax
call fcn.10019951
jmp 0x1000e76f
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d0], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e78c
mov dword [eax], vtable.CCarEnterExitSA.0
jmp 0x1000e78e
mov eax, ebx
push 4
mov dword [esi + 0x1c01d4], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x1000e7b0
mov ecx, eax
call fcn.1000c6df
jmp 0x1000e7b2
mov eax, ebx
push 0x88
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01d8], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x1000e7da
mov ecx, eax
call fcn.1000ec8a
jmp 0x1000e7dc
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0130], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x1000e802
push edi
mov ecx, eax
call fcn.100188fe
jmp 0x1000e804
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c017c], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x1000e829
mov ecx, eax
call fcn.1000ffeb
jmp 0x1000e82b
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0180], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e848
mov dword [eax], vtable.CEventListSA.0
jmp 0x1000e84a
mov eax, ebx
push 0xd0
mov dword [esi + 0x1c0148], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x1000e874
push 0x96c048
mov ecx, eax
call fcn.1000fb9d
jmp 0x1000e876
mov eax, ebx
push 8
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0150], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x1000e8a1
push dword [esi + 0x1c01c8]
mov ecx, eax
call fcn.1001d8ac
jmp 0x1000e8a3
mov eax, ebx
push 0xe1c
mov byte [ebp - 4], bl
mov dword [esi + 0x1c01cc], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x1000e8cb
mov ecx, eax
call fcn.1000917c
jmp 0x1000e8cd
mov eax, ebx
push 4
mov byte [ebp - 4], bl
mov dword [esi + 0x1c0184], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e8ea
mov dword [eax], vtable.CStreamingSA.0
jmp 0x1000e8ec
mov eax, ebx
push 4
mov dword [esi + 0x1c0188], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e906
mov dword [eax], vtable.CVisibilityPluginsSA.0
jmp 0x1000e908
mov eax, ebx
push 4
mov dword [esi + 0x1c018c], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e922
mov dword [eax], vtable.CKeyGenSA.0
jmp 0x1000e924
mov eax, ebx
push 4
mov dword [esi + 0x1c0190], eax
call fcn.1004e8da
pop ecx
test eax, eax
je 0x1000e93e
mov dword [eax], vtable.CRopesSA.0
jmp 0x1000e940
mov eax, ebx
push 8
mov dword [esi + 0x1c0194], eax
call fcn.1004e8da
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e964
mov dword [eax], vtable.CFxSA.0
mov dword [eax + 4], 0xa9ae00
jmp 0x1000e966
mov eax, ebx
push 0xe0cc
mov dword [esi + 0x1c0198], eax
call fcn.1004e8da
pop ecx
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x1000e98b
mov ecx, eax
call fcn.10021963
jmp 0x1000e98d
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.1004e8da
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000e9cc
lea ecx, [esi + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], ebx
mov dword [eax + 4], ecx
jmp 0x1000e9ce
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 0x1000e9ac
mov eax, dword [ebp - 0x14]
add eax, 0xc0
mov esi, eax
xor ebx, ebx
push 0xc
call fcn.1004e8da
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000ea0d
lea ecx, [ebx + 0x16]
mov dword [eax], vtable.CWeaponInfoSA.0
mov dword [eax + 8], edi
mov dword [eax + 4], ecx
jmp 0x1000ea0f
xor eax, eax
mov dword [esi], eax
inc ebx
add edi, 0x70
add esi, 4
cmp ebx, 0xb
jl 0x1000e9ed
cmp edi, 0xc8cdb8
jl 0x1000e9eb
push 0xc
call fcn.1004e8da
xor ebx, ebx
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x1000ea48
mov dword [eax], vtable.CPlayerInfoSA.0
mov dword [eax + 4], 0xb7cd98
mov dword [eax + 8], ebx
jmp 0x1000ea4a
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.10002678
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.1000e2c1
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969152
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000eace
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], ecx
cmp eax, 0x1000
jb 0x1000eac5
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.10002423
mov eax, dword [ebp - 0x10]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
push eax
push ecx
call fcn.1004e90a
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.10002678
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000e2c1
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969160
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000eb43
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000eb3a
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.10002423
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.1004e90a
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.10002678
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000e2c1
mov byte [ebp - 4], bl
mov eax, dword [eax]
mov dword [eax + 0x28], 0x969161
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000ebb8
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], ecx
cmp eax, 0x1000
jb 0x1000ebaf
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.10002423
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
push eax
push ecx
call fcn.1004e90a
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.10002678
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.1000e2c1
mov eax, dword [eax]
mov dword [eax + 0x28], 0x96916c
mov eax, dword [ebp - 0x24]
cmp eax, 0x10
jb 0x1000ec2a
mov ecx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
cmp eax, 0x1000
jb 0x1000ec21
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.10002423
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.1004e90a
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