Function at 0x446070
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [0x485498]
sub esp, 0xbc
push ebx
xor ebx, ebx
push ebp
push esi
cmp eax, ebx
push edi
je 0x446092
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xbc
ret
mov eax, dword [0x48549c]
mov esi, 1
cmp eax, ebx
je 0x4460f2
call fcn.0043ad80
test eax, eax
jne 0x44736f
mov eax, dword [0x485608]
mov dword [0x48549c], ebx
cmp eax, ebx
jne 0x446a55
cmp dword [0x485468], ebx
jne 0x4460f2
cmp dword [0x48546c], ebx
je 0x4460ec
cmp dword [0x485464], ebx
jne 0x4460ec
cmp dword [0x4854a0], ebx
jne 0x4460ec
cmp dword [0x48545c], ebx
je 0x446a55
mov dword [0x485468], esi
cmp dword [0x485494], ebx
jne 0x4461ad
cmp dword [0x4813b0], ebx
je 0x446cdb
mov dword [0x4840ac], 0xffffffff
mov dword [0x485494], esi
mov dword [0x485468], esi
mov dword [0x4819a0], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
call fcn.00417420
mov dword [0x483a04], esi
mov dword [0x4854f0], esi
mov eax, esi
pop edi
pop esi
mov byte [0x485668], bl
pop ebp
pop ebx
add esp, 0xbc
ret
push 7
call dword [0x483b14]
cmp dword [0x485388], ebx
je 0x446397
mov ecx, dword [0x47e96c]
and ecx, 0xffff
cmp ecx, 0xffff
jne 0x4461fc
mov edi, str._____
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x47e250
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x446232
cmp ecx, ebx
jg 0x446208
mov byte [0x47e250], bl
jmp 0x446232
xor edi, edi
mov eax, 0x46ac80
cmp ecx, dword [eax]
je 0x446268
add eax, 0x10
inc edi
cmp eax, 0x46b2f0
jl 0x44620f
push ecx
push 0x46d154
push 0x47e250
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
mov edi, 0x47e250
or ecx, 0xffffffff
xor eax, eax
mov ebp, 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, ebp
jne 0x446397
mov edi, 0x485668
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x1d
jl 0x446293
mov byte [0x485668], bl
jmp 0x4462a4
shl edi, 4
add edi, 0x46ac84
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x47e250
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x446232
mov al, byte [0x47e250]
mov byte [ecx + 0x485668], al
mov byte [ecx + 0x485669], bl
mov esi, 0x485668
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, ebx
jle 0x4462cd
mov dl, byte [esi]
cmp dl, bl
je 0x4462cd
cmp dl, byte [eax + str.BOSTON]
jne 0x446336
inc esi
inc eax
cmp eax, ecx
jl 0x4462b9
xor ebp, ebp
xor ecx, ecx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ecx
mov dword [0x4813b0], ebx
jmp 0x44633c
mov ecx, dword [0x4839b8]
mov edi, str.BOSTON
mov esi, 0x485668
mov dl, byte [esi]
mov al, dl
cmp dl, byte [edi]
jne 0x44636a
cmp al, bl
je 0x446366
mov dl, byte [esi + 1]
mov al, dl
cmp dl, byte [edi + 1]
jne 0x44636a
add esi, 2
add edi, 2
cmp al, bl
jne 0x446346
xor eax, eax
jmp 0x44636f
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x44638b
push 0xa
call fcn.0043cc50
mov ecx, dword [0x4839b8]
add esp, 4
mov byte [0x485668], bl
jmp 0x44639d
cmp ebp, ebx
je 0x44639d
mov byte [0x485668], bl
jmp 0x44639d
mov ecx, dword [0x4839b8]
mov edx, dword [0x46dfe0]
mov eax, dword [str.Continue]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], eax
mov al, byte [0x46dfe4]
xor edx, edx
mov dword [esp + 0x41], edx
mov byte [esp + 0x40], al
mov eax, dword [str.Restart_Level]
mov dword [esp + 0x45], edx
mov word [esp + 0x49], dx
mov dword [esp + 0x4c], eax
mov eax, dword [0x46dfd4]
mov byte [esp + 0x4b], dl
mov edx, dword [0x46dfd0]
mov dword [esp + 0x54], eax
xor eax, eax
mov dword [esp + 0x50], edx
mov dx, word [0x46dfd8]
mov dword [esp + 0x5a], eax
mov word [esp + 0x58], dx
mov edx, dword [str.Menu]
mov word [esp + 0x5e], ax
mov al, byte [0x46deec]
mov dword [esp + 0x60], edx
mov byte [esp + 0x64], al
mov eax, dword [str.CHEAT_MENU]
xor edx, edx
mov dword [esp + 0x65], edx
mov dword [esp + 0x74], eax
mov ax, word [0x46dfc8]
mov dword [esp + 0x69], edx
mov word [esp + 0x7c], ax
mov dword [esp + 0x6d], edx
xor eax, eax
mov word [esp + 0x71], dx
mov dword [esp + 0x7f], eax
mov esi, dword [0x4819a0]
mov byte [esp + 0x73], dl
mov edx, dword [0x46dfc4]
mov dword [esp + 0x83], eax
mov dword [esp + 0x78], edx
mov dl, byte [0x46dfca]
mov byte [esp + 0x87], al
mov eax, dword [0x48545c]
mov byte [esp + 0x7e], dl
cmp eax, ebx
je 0x446581
mov ebp, 3
cmp ecx, ebx
mov dword [esp + 0x28], str.Retry
mov dword [esp + 0x2c], str.Menu
mov dword [esp + 0x30], str.Exit_Game
mov dword [esp + 0x20], ebp
je 0x446d1b
cmp esi, ebx
jne 0x44654f
mov dword [0x485494], ebx
mov dword [0x485468], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
call fcn.004174f0
pop edi
mov eax, 1
pop esi
mov dword [0x483a04], ebx
mov dword [0x4854f0], ebx
mov dword [0x4854a0], ebx
mov dword [0x48545c], ebx
pop ebp
mov dword [0x485608], eax
mov dword [0x48560c], eax
pop ebx
add esp, 0xbc
ret
mov eax, 1
cmp esi, eax
jne 0x446563
mov dword [0x48545c], ebx
jmp 0x4466e4
cmp esi, 2
jne 0x446d1b
pop edi
mov eax, 1
pop esi
pop ebp
mov dword [0x485460], eax
pop ebx
add esp, 0xbc
ret
cmp dword [0x485464], ebx
je 0x4467a6
cmp ecx, ebx
je 0x446788
cmp esi, ebx
jne 0x4466d7
mov dword [0x485494], ebx
mov dword [0x485468], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
call fcn.004174f0
mov eax, 3
mov dword [0x483a04], ebx
mov dword [0x4854f0], ebx
mov dword [0x4854a0], ebx
mov dword [0x46bab8], ebx
mov dword [0x485464], ebx
mov dword [0x485468], ebx
mov dword [0x485424], ebx
mov dword [0x46abd8], eax
mov dword [0x485434], ebx
mov dword [0x46abdc], eax
call fcn.004245d0
push ebx
call fcn.0042f780
mov edx, dword [0x47e180]
mov ecx, dword [0x47e17c]
mov eax, dword [0x47e184]
mov dword [0x47e164], edx
mov edx, dword [0x47e18c]
mov dword [0x47e160], ecx
mov ecx, dword [0x47e188]
mov dword [0x47e170], edx
xor edx, edx
mov dword [0x47e168], eax
mov eax, dword [0x47e190]
mov dword [0x47da6c], edx
mov dword [0x47e16c], ecx
mov ecx, dword [0x47e194]
mov dword [0x47da70], edx
add esp, 4
mov dword [0x47e174], eax
mov dword [0x47e178], ecx
mov dword [0x47da74], edx
call fcn.00435660
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xbc
ret
mov eax, 1
cmp esi, eax
jne 0x446788
pop edi
pop esi
mov dword [0x485494], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
mov dword [0x4854f0], ebx
mov dword [0x4854a0], ebx
mov dword [0x485434], ebx
pop ebp
mov dword [0x483a04], eax
mov dword [0x48564c], eax
mov dword [0x485478], eax
mov dword [0x485468], eax
mov dword [0x46abdc], 3
pop ebx
add esp, 0xbc
ret
mov ebp, 2
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x60]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
jmp 0x446d1b
cmp dword [0x4854a0], ebx
je 0x446a37
cmp ecx, ebx
je 0x446a19
cmp esi, ebx
jne 0x446878
mov dword [0x485494], ebx
mov dword [0x485468], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
call fcn.004174f0
mov eax, dword [0x485420]
mov edx, dword [0x48541c]
mov dword [0x480ed8], eax
pop edi
mov eax, 1
pop esi
mov dword [0x483a04], ebx
mov dword [0x4854f0], ebx
mov dword [0x4854a0], ebx
pop ebp
mov dword [0x484998], edx
mov dword [0x485608], eax
mov dword [0x48560c], eax
pop ebx
add esp, 0xbc
ret
cmp esi, 1
jne 0x446a19
mov eax, dword [0x480ed8]
mov dword [0x485494], ebx
cmp eax, 2
mov dword [0x485468], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
mov dword [0x483a04], esi
mov dword [0x4854f0], ebx
mov dword [0x4854a0], ebx
mov dword [0x4854a8], ebx
jne case.0x446920.8
mov ecx, dword [0x484998]
lea eax, [ecx - 1]
cmp eax, 8
ja case.0x446920.8
jmp dword [eax*4 + 0x447380]
mov dword [0x4819c8], ebx
jmp case.0x446920.8
mov dword [0x4819c8], ebx
mov dword [0x481dd8], ebx
jmp case.0x446920.8
mov dword [0x4819c8], ebx
jmp 0x446951
mov dword [0x4819c8], ebx
mov dword [0x481dd8], ebx
call fcn.00416980
push 0x4855a8
call fcn.00416030
add esp, 4
call fcn.0044e380
call fcn.004193e0
mov eax, dword [0x47f8d0]
mov dword [0x47e8c0], ebx
cmp eax, ebx
jle 0x446999
push ebx
push 0x47f8d0
call fcn.00415750
push eax
call fcn.0041e770
mov eax, dword [0x47f8d0]
add esp, 0xc
cmp eax, ebx
jg 0x44697c
mov eax, dword [0x485500]
mov edi, 1
cmp eax, ebx
mov dword [0x4839d8], ebx
mov dword [0x484ec8], ebx
mov dword [0x46b7c4], 0xffffffff
mov dword [0x47f8d0], ebx
mov dword [0x47db08], ebx
mov dword [0x4853b4], ebx
mov dword [0x48546c], ebx
mov dword [0x46b7b0], edi
jne 0x4469fa
mov esi, dword [0x47dafc]
cmp esi, ebx
je 0x4469f5
push esi
call fcn.0040c710
mov esi, dword [esi + 0x20]
add esp, 4
cmp esi, ebx
jne 0x4469e5
call fcn.0040c7b0
mov dword [0x46b2f0], edi
mov dword [0x485478], edi
mov dword [0x485468], edi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xbc
ret
mov ebp, 2
lea edx, [esp + 0x38]
lea eax, [esp + 0x60]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], eax
jmp 0x446d1b
cmp dword [0x4813b0], ebx
jne 0x446a55
mov edi, dword [0x4813c8]
cmp ecx, ebx
je 0x446ce8
cmp esi, ebx
jne 0x446aeb
mov dword [0x485494], ebx
mov dword [0x485468], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
call fcn.004174f0
pop edi
pop esi
mov dword [0x483a04], ebx
mov dword [0x4854f0], ebx
mov dword [0x4854a0], ebx
pop ebp
mov eax, 1
pop ebx
add esp, 0xbc
ret
mov ecx, 1
sub ecx, edi
cmp esi, ecx
jne 0x446c31
mov dword [0x485494], ebx
mov dword [0x485468], ebx
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
call fcn.004174f0
mov eax, 3
mov dword [0x483a04], ebx
mov dword [0x4854f0], ebx
mov dword [0x4854a0], ebx
mov dword [0x46bab8], ebx
mov dword [0x485464], ebx
mov dword [0x485468], ebx
mov dword [0x485424], ebx
mov dword [0x46abd8], eax
mov dword [0x485434], ebx
mov dword [0x46abdc], eax
call fcn.004245d0
push ebx
call fcn.0042f780
mov eax, dword [0x47e180]
mov edx, dword [0x47e17c]
mov ecx, dword [0x47e184]
mov dword [0x47e164], eax
mov eax, dword [0x47e18c]
mov dword [0x47e160], edx
mov edx, dword [0x47e188]
mov dword [0x47e170], eax
xor eax, eax
mov dword [0x47e168], ecx
mov ecx, dword [0x47e190]
mov dword [0x47da6c], eax
mov dword [0x47e16c], edx
mov edx, dword [0x47e194]
mov dword [0x47da70], eax
add esp, 4
mov dword [0x47e174], ecx
mov dword [0x47e178], edx
mov dword [0x47da74], eax
call fcn.00435660
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xbc
ret
mov ecx, 2
sub ecx, edi
cmp esi, ecx
jne 0x446ce8
mov esi, 1
mov dword [0x4840ac], 0xffffffff
mov dword [0x47e128], ebx
mov dword [0x47e12c], ebx
mov dword [0x47e130], ebx
mov dword [0x47e124], ebx
mov dword [0x47e134], ebx
mov dword [0x47e138], ebx
mov dword [0x47e13c], ebx
mov dword [0x47e140], ebx
mov word [0x47e96c], bx
mov dword [0x485388], ebx
mov word [0x483a64], bx
mov word [0x47f72c], bx
mov dword [0x47e148], ebx
mov dword [0x485394], ebx
mov dword [0x4839b8], ebx
mov dword [0x4813b0], ebx
mov dword [0x485660], esi
mov dword [0x485468], esi
mov dword [0x4813a8], ebx
mov dword [0x484b24], ebx
mov dword [0x484b28], ebx
mov dword [0x48549c], esi
call fcn.0043a130
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xbc
ret
mov ebp, 3
lea ecx, [esp + 0x28]
mov dword [esp + 0x20], ebp
lea eax, [esp + 0x38]
mov edx, ebp
mov dword [ecx], eax
add eax, 0x14
add ecx, 4
dec edx
jne 0x446cfb
cmp edi, ebx
je 0x446d1b
mov edx, dword [esp + 0x30]
mov ebp, 2
mov dword [esp + 0x20], ebp
mov dword [esp + 0x2c], edx
cmp dword [0x47e148], ebx
je 0x446d49
mov edx, dword [0x47e12c]
lea eax, [ebp - 1]
sub esi, edx
cmp esi, eax
mov dword [0x4819a0], esi
jle 0x446d40
mov dword [0x4819a0], ebx
jmp 0x446d49
cmp esi, ebx
jge 0x446d49
mov dword [0x4819a0], eax
lea eax, [ebp + ebp*8]
mov esi, 0xe6
push 1
lea eax, [ebp + eax*2]
shl eax, 1
cdq
sub eax, edx
sar eax, 1
sub esi, eax
call dword [0x47db3c]
push 1
call dword [0x47f768]
push 2
call dword [0x4839b4]
push 0xaf000030
call dword [0x47f7a4]
mov eax, dword [0x4854a0]
add esp, 0x10
cmp eax, ebx
mov edi, 0x47e9b0
jne 0x446ee3
fld dword [0x46b710]
fmul dword [0x46746c]
fld dword [0x46b70c]
fmul dword [0x467468]
mov dword [0x47da14], 4
mov dword [0x4849a8], edi
fst dword [esp + 0x18]
fld dword [0x46b710]
fmul dword [0x467410]
mov ecx, dword [esp + 0x18]
mov dword [0x47ea4c], ecx
fst dword [esp + 0x10]
fld dword [0x46b70c]
fmul dword [0x467464]
fst dword [0x47e9b0]
fxch st(1)
fstp dword [0x47e9b4]
mov edx, dword [esp + 0x10]
fstp dword [0x47e9e4]
fld st(1)
mov dword [0x47ea50], edx
fstp dword [0x47e9e8]
fstp dword [0x47ea18]
fstp dword [0x47ea1c]
call dword [0x484ea8]
push 4
call dword [0x47f768]
push 4
call dword [0x47db3c]
fld dword [0x46b70c]
fmul dword [0x467310]
push 0xffffffffffffffff
lea edx, [esp + 0x94]
fstp dword [esp + 0x30]
fld dword [0x46b710]
fmul dword [0x467464]
fstp dword [esp + 0x24]
fld dword [0x46b70c]
fmul dword [0x467364]
mov eax, dword [esp + 0x24]
push eax
fstp dword [esp + 0x20]
fld dword [0x46b710]
fmul dword [0x467410]
mov ecx, dword [esp + 0x20]
push ecx
push ebx
fstp dword [esp + 0x34]
fld dword [0x46b70c]
fmul dword [0x467464]
push ebx
push edx
fstp dword [esp + 0x34]
call fcn.00432ad0
fld dword [esp + 0x38]
fmul dword [0x4671c0]
mov eax, dword [esp + 0x44]
add esp, 0x20
fadd dword [esp + 0x1c]
push 0xaf000030
push ebx
push eax
push 0x3f800000
push ecx
fstp dword [esp]
fld dword [esp + 0x24]
fmul dword [0x4671c0]
push ecx
lea ecx, [esp + 0xa0]
fadd dword [esp + 0x2c]
fstp dword [esp]
push ecx
call fcn.00433060
add esp, 0x1c
push 1
call dword [0x47f768]
push 1
call dword [0x47db3c]
push 0x8f00ff00
call dword [0x47f7a4]
mov eax, dword [0x4819a0]
mov dword [0x47da14], 4
mov dword [0x4849a8], edi
lea edx, [eax + eax*8]
lea ecx, [eax + edx*2]
lea edx, [esi + ecx*2 + 0x20]
lea ecx, [eax + eax*8]
mov dword [esp + 0x20], edx
fild dword [esp + 0x20]
lea edx, [eax + ecx*2]
fmul dword [0x46b710]
fld dword [0x46b70c]
fmul dword [0x46745c]
lea eax, [esi + edx*2 - 6]
mov dword [esp + 0x20], eax
fst dword [esp + 0x28]
fild dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
fmul dword [0x46b710]
mov dword [0x47ea4c], ecx
fst dword [esp + 0x20]
fld dword [0x46b70c]
fmul dword [0x467458]
fst dword [0x47e9b0]
fxch st(1)
fstp dword [0x47e9b4]
mov edx, dword [esp + 0x20]
fstp dword [0x47e9e4]
fld st(1)
mov dword [0x47ea50], edx
fstp dword [0x47e9e8]
fstp dword [0x47ea18]
fstp dword [0x47ea1c]
call dword [0x484ea8]
push 4
call dword [0x47db3c]
push 0xff00ff00
call dword [0x47f7a4]
push 3
call dword [0x4839b4]
fld dword [0x46b70c]
fadd st(0), st(0)
mov eax, dword [0x4819a0]
push 0xffffffffffffffff
fstp dword [esp + 0x38]
fld dword [0x46b710]
fmul dword [0x467570]
lea ecx, [eax + eax*8]
fstp dword [esp + 0x34]
fld dword [0x46b70c]
fmul dword [0x467454]
lea edx, [eax + ecx*2]
mov ecx, dword [esp + 0x34]
push ecx
lea eax, [esi + edx*2 - 6]
fstp dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov edx, dword [esp + 0x30]
fild dword [esp + 0x34]
push edx
push ebx
fmul dword [0x46b710]
fstp dword [esp + 0x3c]
fld dword [0x46b70c]
fmul dword [0x467458]
fstp dword [esp + 0x4c]
lea eax, [esp + 0xb0]
push ebx
push eax
call fcn.00432ad0
fld dword [esp + 0x48]
fmul dword [0x4671c0]
mov ecx, dword [esp + 0x4c]
add esp, 0x30
lea edx, [esp + 0x88]
fadd dword [esp + 0x14]
push 0xff002f00
push 1
push ecx
push 0x3f800000
push ecx
fstp dword [esp]
fld dword [esp + 0x24]
fmul dword [0x4671c0]
push ecx
fadd dword [esp + 0x3c]
fstp dword [esp]
push edx
call fcn.00432f00
fld dword [0x46b70c]
fmul dword [0x467388]
mov eax, dword [0x4819a0]
push 0xffffffffffffffff
fstp dword [esp + 0x3c]
fld dword [0x46b710]
fmul dword [0x467570]
lea ecx, [eax + eax*8]
fstp dword [esp + 0x38]
fld dword [0x46b70c]
fmul dword [0x467454]
lea edx, [eax + ecx*2]
mov ecx, dword [esp + 0x38]
push ecx
lea eax, [esi + edx*2 - 6]
fstp dword [esp + 0x34]
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x34]
fild dword [esp + 0x38]
push edx
push ebx
lea eax, [esp + 0xb4]
push ebx
fmul dword [0x46b710]
push eax
fstp dword [esp + 0x48]
fld dword [0x46b70c]
fmul dword [0x467458]
fstp dword [esp + 0x58]
call fcn.00432ad0
fld dword [esp + 0x4c]
fmul dword [0x4671c0]
mov ecx, dword [esp + 0x50]
add esp, 0x34
lea edx, [esp + 0x88]
fadd dword [esp + 0x14]
push 0xff206020
push ebx
push ecx
push 0x3f800000
push ecx
fstp dword [esp]
fld dword [esp + 0x24]
fmul dword [0x4671c0]
push ecx
fadd dword [esp + 0x3c]
fstp dword [esp]
push edx
call fcn.00432f00
push 2
call dword [0x47f768]
mov eax, dword [0x48545c]
add esp, 0x20
cmp eax, ebx
je 0x4471df
push 0xff000000
push 0x28
push 0x18d
push 0x13d
push str.INSERT_CD_IN_DRIVE
call fcn.0041b3f0
push 0xff000000
push 0x28
push 0x193
push 0x13d
push str.INSERT_CD_IN_DRIVE
call fcn.0041b3f0
push 0xff000000
push 0x28
push 0x193
push 0x143
push str.INSERT_CD_IN_DRIVE
call fcn.0041b3f0
push 0xff000000
push 0x28
push 0x18d
push 0x143
push str.INSERT_CD_IN_DRIVE
call fcn.0041b3f0
add esp, 0x50
push 0xffff2020
push 0x28
push 0x190
push 0x140
push str.INSERT_CD_IN_DRIVE
jmp 0x447270
cmp dword [0x485464], ebx
je 0x447278
push 0xff000000
push 0x46
push 0x18d
push 0x13d
push str.GAME_OVER
call fcn.0041b3f0
push 0xff000000
push 0x46
push 0x193
push 0x13d
push str.GAME_OVER
call fcn.0041b3f0
push 0xff000000
push 0x46
push 0x193
push 0x143
push str.GAME_OVER
call fcn.0041b3f0
push 0xff000000
push 0x46
push 0x18d
push 0x143
push str.GAME_OVER
call fcn.0041b3f0
add esp, 0x50
push 0xffff2020
push 0x46
push 0x190
push 0x140
push str.GAME_OVER
call fcn.0041b3f0
add esp, 0x14
xor edi, edi
cmp ebp, ebx
jle 0x44736a
mov dword [esp + 0x18], esi
lea ebp, [esp + 0x28]
mov eax, dword [0x4819a0]
or ebx, 0xffffffff
cmp eax, edi
mov dword [esp + 0x10], 0x1e
jne 0x4472ab
mov ebx, 0xffffff00
mov dword [esp + 0x10], 0x1f
fild dword [esp + 0x10]
mov eax, dword [esp + 0x18]
push 0xff000000
push ecx
add eax, 2
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fmul dword [0x46b70c]
mov dword [esp + 0x1c], eax
mov esi, dword [ebp]
fstp dword [esp]
fild dword [esp + 0x1c]
push ecx
fmul dword [0x46b710]
fstp dword [esp]
push esi
call fcn.0041b0a0
fmul dword [esp + 0x20]
fmul dword [0x4671c0]
fsubr dword [0x467448]
fmul dword [0x46b70c]
fstp dword [esp]
push esi
call fcn.0041b1c0
fld dword [esp + 0x24]
fmul dword [0x46b70c]
add esp, 0x14
push ebx
push ecx
fstp dword [esp]
fild dword [esp + 0x20]
push ecx
fmul dword [0x46b710]
fstp dword [esp]
push esi
call fcn.0041b0a0
fmul dword [esp + 0x20]
fmul dword [0x4671c0]
fsubr dword [0x467364]
fmul dword [0x46b70c]
fstp dword [esp]
push esi
call fcn.0041b1c0
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x34]
add esp, 0x14
inc edi
add ebp, 4
add ecx, 0x26
cmp edi, eax
mov dword [esp + 0x18], ecx
jl 0x44728a
call fcn.004397b0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xbc
ret