Function at 0x430460
Capabilities:
Check for peb beingdebugged flag
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x4eb739
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x64
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x10], esi
call fcn.0045ae70
lea ebx, [esi + 0x24]
lea ebp, [esi + 0x20]
push ebx
xor edi, edi
push ebp
push 0x474
mov dword [esp + 0x88], edi
mov dword [esi], 0x4f4254
mov dword [esi + 0x9c], edi
mov dword [esi + 8], str.PlayChar_gump
mov dword [esi + 0x60], edi
mov dword [esi + 0x54], 0x474
mov dword [esi + 0x64], edi
mov dword [esi + 0x50], edi
mov dword [esi + 0x4c], edi
mov dword [esi + 0x48], edi
mov dword [esi + 0x44], edi
mov dword [esi + 0x40], edi
call fcn.004447f0
push str.framedata_for_CPlayCharGump
push 8
mov dword [esi + 0x30], 0x79
mov dword [esi + 0x34], 0x66
mov dword [esi + 0x14], edi
mov dword [esi + 0x18], 1
call fcn.00479630
mov ecx, dword [esi + 0x18]
mov edi, eax
shl ecx, 3
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esi + 0x3c], edi
push str.dumb_frame0
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp]
imul eax, dword [ebx]
lea ecx, [eax + eax + 4]
push ecx
call fcn.00479630
mov edx, dword [esi + 0x3c]
mov dword [edx + 4], eax
mov eax, dword [esi + 0x3c]
mov dx, word [ebp]
mov ecx, dword [eax + 4]
mov word [ecx], dx
mov eax, dword [esi + 0x3c]
mov dx, word [ebx]
mov ecx, dword [eax + 4]
xor eax, eax
mov word [ecx + 2], dx
mov ecx, dword [ebp]
imul ecx, dword [ebx]
mov edx, dword [esi + 0x3c]
shl ecx, 1
mov edi, dword [edx + 4]
mov edx, ecx
add edi, 4
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx]
mov edx, dword [esi + 0x3c]
mov ecx, dword [ebp]
push eax
mov eax, dword [edx + 4]
push ecx
add eax, 4
mov ecx, dword [esi + 0x54]
xor edi, edi
push eax
push edi
push edi
push ecx
push fcn.004c00b0
call fcn.00444850
mov edx, dword [ebx]
mov eax, dword [ebp]
mov dword [esp + 0x58], edx
mov edx, dword [esi + 0x3c]
lea ecx, [esp + 0x4c]
mov dword [esp + 0x4c], edi
push ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], edi
push eax
mov eax, dword [edx + 4]
add eax, 4
push eax
push str.Password
push 0x386
push 2
push 0x7d
push 0x3c
call fcn.00442410
mov ecx, dword [esp + 0xdc]
add esp, 0x58
lea edx, [esp + 0x24]
push ecx
push str.Play_as__s_
push edx
call fcn.004de113
mov ecx, dword [esi + 0x3c]
mov ebp, dword [ebp]
push edi
push edi
mov edx, dword [ecx + 4]
lea eax, [esp + 0x28]
push edi
push eax
push ebp
add edx, 4
add ebp, 0xffffff88
push edx
lea eax, [esp + 0x48]
push ebp
push eax
push 0x386
push 2
push 0x32
push 0x3c
call fcn.004424b0
push 0x1cc
call fcn.004ddf8e
add esp, 0x40
mov dword [esp + 0x84], eax
cmp eax, edi
mov byte [esp + 0x7c], 1
je 0x430652
push edi
push edi
push 1
push 0x386
push 1
push 0x1e
push edi
push 0x475
push 0x475
push esi
push 0x82
push 0x3c
mov ecx, eax
call fcn.0042ac40
jmp 0x430654
xor eax, eax
mov dword [esi + 0xa0], eax
mov word [eax + 0xea], 0x476
mov ecx, dword [esi + 0xa0]
mov ebx, 1
push ebx
push esi
mov word [ecx + 0xec], 0x477
mov edx, dword [esi + 0xa0]
mov byte [esp + 0x84], 0
mov byte [edx + 0xee], 0xc
mov eax, dword [esi + 0xa0]
mov byte [eax + 0xef], 5
mov ecx, dword [esi + 0xa0]
call fcn.0045a530
mov ecx, dword [esi + 0xa0]
mov dword [ecx + 0xb8], ebx
mov edx, dword [esi + 0xa0]
mov dword [edx + 0xe4], ebx
mov eax, dword [esi + 0xa0]
mov dword [0xb6612c], eax
mov ecx, dword [esi + 0xa0]
mov edx, dword [ecx]
call dword [edx + 0x178]
push 0xec
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x84], eax
cmp eax, edi
mov byte [esp + 0x7c], 2
je 0x430726
mov ebp, dword [esi + 0x34]
push edi
push 0x47c
mov ecx, 0x124
push 0x47b
push 0x41f570
sub ecx, ebp
mov ebp, dword [esi + 0x30]
push edi
mov edx, 0xee
push edi
push esi
sub edx, ebp
push ecx
push edx
mov ecx, eax
call fcn.00422990
jmp 0x430728
xor eax, eax
push ebx
push esi
mov ecx, eax
mov byte [esp + 0x84], 0
mov dword [eax + 0xac], 0x47d
call fcn.0045a530
push 0xec
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x84], eax
cmp eax, edi
mov byte [esp + 0x7c], 3
je 0x430792
mov edx, dword [esi + 0x34]
push edi
push 0x479
push 0x478
push 0x4c85c0
mov ecx, 0x124
push edi
push edi
mov edi, dword [esi + 0x30]
sub ecx, edx
mov edx, 0x145
push esi
sub edx, edi
push ecx
push edx
mov ecx, eax
call fcn.00422990
jmp 0x430794
xor eax, eax
push ebx
push esi
mov ecx, eax
mov byte [esp + 0x84], 0
mov dword [eax + 0xac], 0x47a
call fcn.0045a530
mov ecx, dword [esp + 0x74]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x70
ret 8