Function at 0x51e2f0
Capabilities:
Get number of processors
Get process heap flags
Get process heap force flags

Disassembly:
push 0xffffffffffffffff
push 0x663360
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov eax, dword [0x70903c]
xor eax, esp
push eax
lea eax, [esp + 0x24]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x20], esi
call fcn.00520180
lea eax, [esp + 0x17]
push eax
lea edx, [esp + 0x1b]
xor ebx, ebx
lea ecx, [esi + 0x8c]
push edx
mov dword [esp + 0x34], ebx
mov dword [esi], vtable.CMapOutdoor.0
call fcn.0059a810
push fcn.0056a8f0
push fcn.0056a8a0
push 3
push 0x14
lea eax, [esi + 0xbc]
push eax
mov byte [esp + 0x40], 1
call fcn.00616066
lea ecx, [esi + 0x138]
mov byte [esp + 0x2c], 2
call fcn.0051c710
lea ecx, [esi + 0x150]
mov byte [esp + 0x2c], 3
call fcn.0051c710
lea edi, [esi + 0x1ac]
mov ecx, edi
mov byte [esp + 0x2c], 4
call fcn.00566280
lea ecx, [esi + 0x2b4]
mov byte [esp + 0x2c], 5
call fcn.00585ca0
lea ecx, [esi + 0x384]
mov byte [esp + 0x2c], 6
call fcn.0057fa10
lea ecx, [esi + 0x7ac]
mov byte [esp + 0x2c], 7
call fcn.0057b1b0
lea ecx, [esi + 0x82c]
mov byte [esp + 0x2c], 8
call fcn.0057b5e0
lea ecx, [esi + 0xa18]
mov byte [esp + 0x2c], 9
call fcn.0051c710
lea ecx, [esi + 0xa30]
mov byte [esp + 0x2c], 0xa
call fcn.0051c710
lea ecx, [esi + 0xa48]
mov byte [esp + 0x2c], 0xb
call fcn.0051c710
lea ecx, [esi + 0xa60]
mov byte [esp + 0x2c], 0xc
call fcn.0051c710
lea ecx, [esi + 0xa80]
mov byte [esp + 0x2c], 0xd
mov dword [esi + 0xa78], ebx
mov dword [esi + 0xa7c], ebx
call fcn.0051c710
lea ecx, [esi + 0xa98]
mov byte [esp + 0x2c], 0xe
call fcn.0051c710
lea ecx, [esi + 0xab0]
mov byte [esp + 0x2c], 0xf
call fcn.0051c710
mov byte [esp + 0x2c], 0x10
lea ecx, [esi + 0xac8]
call fcn.0051c710
lea ecx, [esi + 0xaf8]
mov byte [esp + 0x2c], 0x11
mov dword [esi + 0xae0], ebx
mov dword [esi + 0xae4], ebx
call fcn.00471200
lea ecx, [esi + 0xb2c]
mov byte [esp + 0x2c], 0x12
call fcn.0051c180
lea ecx, [esi + 0xb94]
mov byte [esp + 0x2c], 0x13
call fcn.0051c710
lea ecx, [esi + 0xbac]
mov byte [esp + 0x2c], 0x14
call fcn.0051c710
push fcn.005662a0
push fcn.00566280
push 0x1e
push 0x20
lea ecx, [esi + 0xbc8]
push ecx
mov byte [esp + 0x40], 0x15
call fcn.00616066
lea ebp, [esi + 0xf8c]
mov ecx, ebp
mov byte [esp + 0x2c], 0x16
call fcn.00566280
lea ecx, [esi + 0xfac]
mov byte [esp + 0x2c], 0x17
call fcn.00566280
lea ecx, [esi + 0x100c]
mov byte [esp + 0x2c], 0x18
call fcn.0051c6a0
lea ecx, [esi + 0x1048]
mov byte [esp + 0x2c], 0x19
call fcn.0051c710
lea edx, [esp + 0x17]
push edx
lea eax, [esp + 0x1b]
lea ecx, [esi + 0x1088]
push eax
mov byte [esp + 0x34], 0x1a
mov dword [esi + 0x1060], ebx
mov dword [esi + 0x1064], ebx
call fcn.00567670
push fcn.00510070
push fcn.0051c710
push 0x64
lea eax, [esi + 0x10a8]
push 0x18
push eax
mov byte [esp + 0x40], 0x1b
call fcn.00616066
mov eax, 0xf
mov dword [esi + 0x1a24], eax
mov dword [esi + 0x1a20], ebx
mov byte [esi + 0x1a10], bl
mov dword [esi + 0x1a40], eax
mov dword [esi + 0x1a3c], ebx
mov byte [esi + 0x1a2c], bl
mov ecx, dword [0x7123dc]
push str.D:_ymir_work_special_fog.tga
mov byte [esp + 0x30], 0x1e
call fcn.0055f4e0
mov ebx, eax
push str.d:_ymir_work_special_white.dds
mov ecx, dword [0x7123dc]
call fcn.0055f4e0
mov ecx, dword [0x7123dc]
push str.d:_ymir_Work_special_PCBlockerAlpha.dds
mov dword [esp + 0x1c], eax
call fcn.0055f4e0
push ebx
mov ecx, edi
mov dword [esp + 0x20], eax
call fcn.00565a50
mov ecx, dword [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.00565a50
mov edx, dword [esp + 0x1c]
push edx
lea ecx, [esi + 0xfac]
call fcn.00565a50
mov ecx, esi
call fcn.0051cec0
mov ecx, esi
call fcn.00544f80
mov ecx, esi
call fcn.00544ff0
mov eax, esi
mov ecx, dword [esp + 0x24]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret