4018f8:	75 05                	jne    0x4018ff
4018fa:	b8 01 00 00 00       	mov    $0x1,%eax
4018ff:	81 c4 30 08 00 00    	add    $0x830,%esp
401905:	c3                   	ret
401906:	cc                   	int3
401907:	cc                   	int3
401908:	cc                   	int3
401909:	cc                   	int3
40190a:	cc                   	int3
40190b:	cc                   	int3
40190c:	cc                   	int3
40190d:	cc                   	int3
40190e:	cc                   	int3
40190f:	cc                   	int3
401910:	8b 44 24 0c          	mov    0xc(%esp),%eax
401914:	8b 4c 24 08          	mov    0x8(%esp),%ecx
401918:	8b 54 24 04          	mov    0x4(%esp),%edx
40191c:	50                   	push   %eax
40191d:	6a 00                	push   $0x0
40191f:	6a 00                	push   $0x0
401921:	6a 00                	push   $0x0
401923:	6a 08                	push   $0x8
401925:	51                   	push   %ecx
401926:	52                   	push   %edx
401927:	e8 84 41 00 00       	call   0x405ab0
40192c:	83 c4 1c             	add    $0x1c,%esp
40192f:	c3                   	ret
401930:	8b 44 24 0c          	mov    0xc(%esp),%eax
401934:	8b 4c 24 08          	mov    0x8(%esp),%ecx
401938:	8b 54 24 04          	mov    0x4(%esp),%edx
40193c:	50                   	push   %eax
40193d:	6a 00                	push   $0x0
40193f:	6a 00                	push   $0x0
401941:	6a 00                	push   $0x0
401943:	6a 10                	push   $0x10
401945:	51                   	push   %ecx
401946:	52                   	push   %edx
401947:	e8 64 41 00 00       	call   0x405ab0
40194c:	83 c4 1c             	add    $0x1c,%esp
40194f:	c3                   	ret
401950:	8b 0d 18 03 47 00    	mov    0x470318,%ecx
401956:	83 ec 1c             	sub    $0x1c,%esp
401959:	85 c9                	test   %ecx,%ecx
40195b:	75 13                	jne    0x401970
40195d:	68 b4 be 45 00       	push   $0x45beb4
401962:	ff 15 38 34 47 00    	call   *0x473438
401968:	8b c8                	mov    %eax,%ecx
40196a:	89 0d 18 03 47 00    	mov    %ecx,0x470318
401970:	a1 14 03 47 00       	mov    0x470314,%eax
401975:	85 c0                	test   %eax,%eax
401977:	75 23                	jne    0x40199c
401979:	85 c9                	test   %ecx,%ecx
40197b:	74 15                	je     0x401992
40197d:	68 98 be 45 00       	push   $0x45be98
401982:	51                   	push   %ecx
401983:	ff 15 34 34 47 00    	call   *0x473434
401989:	a3 14 03 47 00       	mov    %eax,0x470314
40198e:	85 c0                	test   %eax,%eax
401990:	75 0a                	jne    0x40199c
401992:	ff 15 24 34 47 00    	call   *0x473424
401998:	83 c4 1c             	add    $0x1c,%esp
40199b:	c3                   	ret
40199c:	56                   	push   %esi
40199d:	8b 74 24 24          	mov    0x24(%esp),%esi
4019a1:	8d 4c 24 04          	lea    0x4(%esp),%ecx
4019a5:	51                   	push   %ecx
4019a6:	6a 18                	push   $0x18
4019a8:	8d 54 24 10          	lea    0x10(%esp),%edx
4019ac:	52                   	push   %edx
4019ad:	6a 00                	push   $0x0
4019af:	56                   	push   %esi
4019b0:	ff d0                	call   *%eax
4019b2:	85 c0                	test   %eax,%eax
4019b4:	78 47                	js     0x4019fd
4019b6:	83 7c 24 04 18       	cmpl   $0x18,0x4(%esp)
4019bb:	74 0a                	je     0x4019c7
4019bd:	b8 18 00 00 00       	mov    $0x18,%eax
4019c2:	5e                   	pop    %esi
4019c3:	83 c4 1c             	add    $0x1c,%esp
4019c6:	c3                   	ret
4019c7:	8b 4c 24 28          	mov    0x28(%esp),%ecx
4019cb:	8b 54 24 0c          	mov    0xc(%esp),%edx
4019cf:	8d 44 24 04          	lea    0x4(%esp),%eax
4019d3:	50                   	push   %eax
4019d4:	68 58 02 00 00       	push   $0x258
4019d9:	51                   	push   %ecx
4019da:	52                   	push   %edx
4019db:	56                   	push   %esi
4019dc:	ff 15 28 34 47 00    	call   *0x473428
4019e2:	85 c0                	test   %eax,%eax
4019e4:	74 11                	je     0x4019f7
4019e6:	81 7c 24 04 58 02 00 	cmpl   $0x258,0x4(%esp)
4019ed:	00
4019ee:	75 07                	jne    0x4019f7
4019f0:	33 c0                	xor    %eax,%eax
4019f2:	5e                   	pop    %esi
4019f3:	83 c4 1c             	add    $0x1c,%esp
4019f6:	c3                   	ret
4019f7:	ff 15 24 34 47 00    	call   *0x473424
4019fd:	5e                   	pop    %esi
4019fe:	83 c4 1c             	add    $0x1c,%esp
401a01:	c3                   	ret
401a02:	cc                   	int3
401a03:	cc                   	int3
401a04:	cc                   	int3
401a05:	cc                   	int3
401a06:	cc                   	int3
401a07:	cc                   	int3
401a08:	cc                   	int3
401a09:	cc                   	int3
401a0a:	cc                   	int3
401a0b:	cc                   	int3
401a0c:	cc                   	int3
401a0d:	cc                   	int3
401a0e:	cc                   	int3
401a0f:	cc                   	int3
401a10:	81 ec f4 04 00 00    	sub    $0x4f4,%esp
401a16:	55                   	push   %ebp
401a17:	56                   	push   %esi
401a18:	57                   	push   %edi
401a19:	e8 f2 19 00 00       	call   0x403410
401a1e:	8b 84 24 04 05 00 00 	mov    0x504(%esp),%eax
401a25:	50                   	push   %eax
401a26:	6a 00                	push   $0x0
401a28:	68 ff 0f 1f 00       	push   $0x1f0fff
401a2d:	ff 15 30 34 47 00    	call   *0x473430
401a33:	8b 35 24 34 47 00    	mov    0x473424,%esi
401a39:	8b f8                	mov    %eax,%edi
401a3b:	ff d6                	call   *%esi
401a3d:	8b e8                	mov    %eax,%ebp
401a3f:	e8 7c 1a 00 00       	call   0x4034c0
401a44:	85 ff                	test   %edi,%edi
401a46:	0f 84 1d 01 00 00    	je     0x401b69
401a4c:	8d 8c 24 a8 02 00 00 	lea    0x2a8(%esp),%ecx
401a53:	51                   	push   %ecx
401a54:	57                   	push   %edi
401a55:	e8 f6 fe ff ff       	call   0x401950
401a5a:	83 c4 08             	add    $0x8,%esp
401a5d:	85 c0                	test   %eax,%eax
401a5f:	75 24                	jne    0x401a85
401a61:	8b 8c 24 b8 02 00 00 	mov    0x2b8(%esp),%ecx
401a68:	8d 54 24 0c          	lea    0xc(%esp),%edx
401a6c:	52                   	push   %edx
401a6d:	68 90 00 00 00       	push   $0x90
401a72:	8d 44 24 18          	lea    0x18(%esp),%eax
401a76:	50                   	push   %eax
401a77:	51                   	push   %ecx
401a78:	57                   	push   %edi
401a79:	ff 15 28 34 47 00    	call   *0x473428
401a7f:	85 c0                	test   %eax,%eax
401a81:	75 17                	jne    0x401a9a
401a83:	ff d6                	call   *%esi
401a85:	57                   	push   %edi
401a86:	8b e8                	mov    %eax,%ebp
401a88:	ff 15 2c 34 47 00    	call   *0x47342c
401a8e:	5f                   	pop    %edi
401a8f:	5e                   	pop    %esi
401a90:	8b c5                	mov    %ebp,%eax
401a92:	5d                   	pop    %ebp
401a93:	81 c4 f4 04 00 00    	add    $0x4f4,%esp
401a99:	c3                   	ret
401a9a:	53                   	push   %ebx
401a9b:	8b 9c 24 14 05 00 00 	mov    0x514(%esp),%ebx
401aa2:	85 db                	test   %ebx,%ebx
401aa4:	74 32                	je     0x401ad8
401aa6:	0f b7 74 24 54       	movzwl 0x54(%esp),%esi
401aab:	8b 84 24 18 05 00 00 	mov    0x518(%esp),%eax
401ab2:	48                   	dec    %eax
401ab3:	3b f0                	cmp    %eax,%esi
401ab5:	7e 02                	jle    0x401ab9
401ab7:	8b f0                	mov    %eax,%esi
401ab9:	8b 44 24 58          	mov    0x58(%esp),%eax
401abd:	8d 54 24 10          	lea    0x10(%esp),%edx
401ac1:	52                   	push   %edx
401ac2:	56                   	push   %esi
401ac3:	53                   	push   %ebx
401ac4:	50                   	push   %eax
401ac5:	57                   	push   %edi
401ac6:	ff 15 28 34 47 00    	call   *0x473428
401acc:	85 c0                	test   %eax,%eax
401ace:	74 48                	je     0x401b18
401ad0:	d1 ee                	shr    $1,%esi
401ad2:	33 c9                	xor    %ecx,%ecx
401ad4:	66 89 0c 73          	mov    %cx,(%ebx,%esi,2)
401ad8:	8b 9c 24 0c 05 00 00 	mov    0x50c(%esp),%ebx
401adf:	85 db                	test   %ebx,%ebx
401ae1:	74 7e                	je     0x401b61
401ae3:	0f b7 74 24 4c       	movzwl 0x4c(%esp),%esi
401ae8:	8b 84 24 10 05 00 00 	mov    0x510(%esp),%eax
401aef:	48                   	dec    %eax
401af0:	3b f0                	cmp    %eax,%esi
401af2:	7e 02                	jle    0x401af6
401af4:	8b f0                	mov    %eax,%esi
401af6:	8b 4c 24 50          	mov    0x50(%esp),%ecx
401afa:	8d 54 24 10          	lea    0x10(%esp),%edx
401afe:	52                   	push   %edx
401aff:	68 08 02 00 00       	push   $0x208
401b04:	8d 84 24 ac 00 00 00 	lea    0xac(%esp),%eax
401b0b:	50                   	push   %eax
401b0c:	51                   	push   %ecx
401b0d:	57                   	push   %edi
401b0e:	ff 15 28 34 47 00    	call   *0x473428
401b14:	85 c0                	test   %eax,%eax
401b16:	75 1c                	jne    0x401b34
401b18:	ff 15 24 34 47 00    	call   *0x473424
401b1e:	5b                   	pop    %ebx
401b1f:	57                   	push   %edi
401b20:	8b e8                	mov    %eax,%ebp
401b22:	ff 15 2c 34 47 00    	call   *0x47342c
401b28:	5f                   	pop    %edi
401b29:	5e                   	pop    %esi
401b2a:	8b c5                	mov    %ebp,%eax
401b2c:	5d                   	pop    %ebp
401b2d:	81 c4 f4 04 00 00    	add    $0x4f4,%esp
401b33:	c3                   	ret
401b34:	d1 ee                	shr    $1,%esi
401b36:	8d 84 24 a4 00 00 00 	lea    0xa4(%esp),%eax
401b3d:	33 d2                	xor    %edx,%edx
401b3f:	56                   	push   %esi
401b40:	50                   	push   %eax
401b41:	66 89 94 24 b2 02 00 	mov    %dx,0x2b2(%esp)
401b48:	00
401b49:	e8 f2 41 00 00       	call   0x405d40
401b4e:	83 c4 04             	add    $0x4,%esp
401b51:	50                   	push   %eax
401b52:	53                   	push   %ebx
401b53:	e8 52 ef 02 00       	call   0x430aaa
401b58:	83 c4 0c             	add    $0xc,%esp
401b5b:	33 c9                	xor    %ecx,%ecx
401b5d:	66 89 0c 73          	mov    %cx,(%ebx,%esi,2)
401b61:	5b                   	pop    %ebx
401b62:	57                   	push   %edi
401b63:	ff 15 2c 34 47 00    	call   *0x47342c
401b69:	5f                   	pop    %edi
401b6a:	5e                   	pop    %esi
401b6b:	8b c5                	mov    %ebp,%eax
401b6d:	5d                   	pop    %ebp
401b6e:	81 c4 f4 04 00 00    	add    $0x4f4,%esp
401b74:	c3                   	ret
401b75:	cc                   	int3
401b76:	cc                   	int3
401b77:	cc                   	int3
401b78:	cc                   	int3
401b79:	cc                   	int3
401b7a:	cc                   	int3
401b7b:	cc                   	int3
401b7c:	cc                   	int3
401b7d:	cc                   	int3
401b7e:	cc                   	int3
401b7f:	cc                   	int3
401b80:	8b 44 24 0c          	mov    0xc(%esp),%eax
401b84:	8b 4c 24 08          	mov    0x8(%esp),%ecx
401b88:	8b 54 24 04          	mov    0x4(%esp),%edx
401b8c:	50                   	push   %eax
401b8d:	51                   	push   %ecx
401b8e:	6a 00                	push   $0x0
401b90:	6a 00                	push   $0x0
401b92:	52                   	push   %edx
401b93:	e8 78 fe ff ff       	call   0x401a10
401b98:	83 c4 14             	add    $0x14,%esp
401b9b:	c3                   	ret
401b9c:	cc                   	int3
401b9d:	cc                   	int3
401b9e:	cc                   	int3
401b9f:	cc                   	int3
401ba0:	8b 44 24 0c          	mov    0xc(%esp),%eax
401ba4:	8b 4c 24 08          	mov    0x8(%esp),%ecx
401ba8:	8b 54 24 04          	mov    0x4(%esp),%edx
401bac:	6a 00                	push   $0x0
401bae:	6a 00                	push   $0x0
401bb0:	50                   	push   %eax
401bb1:	51                   	push   %ecx
401bb2:	52                   	push   %edx
401bb3:	e8 58 fe ff ff       	call   0x401a10
401bb8:	83 c4 14             	add    $0x14,%esp
401bbb:	c3                   	ret
401bbc:	cc                   	int3
401bbd:	cc                   	int3
401bbe:	cc                   	int3
401bbf:	cc                   	int3
401bc0:	a1 18 03 47 00       	mov    0x470318,%eax
401bc5:	83 ec 64             	sub    $0x64,%esp
401bc8:	55                   	push   %ebp
401bc9:	56                   	push   %esi
401bca:	33 ed                	xor    %ebp,%ebp
401bcc:	57                   	push   %edi
401bcd:	bf 00 10 00 00       	mov    $0x1000,%edi
401bd2:	85 c0                	test   %eax,%eax
401bd4:	75 10                	jne    0x401be6
401bd6:	68 b4 be 45 00       	push   $0x45beb4
401bdb:	ff 15 38 34 47 00    	call   *0x473438
401be1:	a3 18 03 47 00       	mov    %eax,0x470318
401be6:	8b 35 10 03 47 00    	mov    0x470310,%esi
401bec:	85 f6                	test   %esi,%esi
401bee:	75 29                	jne    0x401c19
401bf0:	85 c0                	test   %eax,%eax
401bf2:	74 18                	je     0x401c0c
401bf4:	68 cc be 45 00       	push   $0x45becc
401bf9:	50                   	push   %eax
401bfa:	ff 15 34 34 47 00    	call   *0x473434
401c00:	8b f0                	mov    %eax,%esi
401c02:	89 35 10 03 47 00    	mov    %esi,0x470310
401c08:	85 f6                	test   %esi,%esi
401c0a:	75 0d                	jne    0x401c19
401c0c:	ff 15 24 34 47 00    	call   *0x473424
401c12:	5f                   	pop    %edi
401c13:	5e                   	pop    %esi
401c14:	5d                   	pop    %ebp
401c15:	83 c4 64             	add    $0x64,%esp
401c18:	c3                   	ret
401c19:	53                   	push   %ebx
401c1a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
401c20:	85 ed                	test   %ebp,%ebp
401c22:	74 09                	je     0x401c2d
401c24:	55                   	push   %ebp
401c25:	e8 73 ed 02 00       	call   0x43099d
401c2a:	83 c4 04             	add    $0x4,%esp
401c2d:	03 ff                	add    %edi,%edi
401c2f:	81 ff 00 00 00 01    	cmp    $0x1000000,%edi
401c35:	77 2e                	ja     0x401c65
401c37:	57                   	push   %edi
401c38:	e8 d9 ed 02 00       	call   0x430a16
401c3d:	8b e8                	mov    %eax,%ebp
401c3f:	83 c4 04             	add    $0x4,%esp
401c42:	85 ed                	test   %ebp,%ebp
401c44:	74 1f                	je     0x401c65
401c46:	8d 44 24 10          	lea    0x10(%esp),%eax
401c4a:	50                   	push   %eax
401c4b:	57                   	push   %edi
401c4c:	55                   	push   %ebp
401c4d:	6a 05                	push   $0x5
401c4f:	8b dd                	mov    %ebp,%ebx
401c51:	ff d6                	call   *%esi
401c53:	8b f0                	mov    %eax,%esi
401c55:	81 fe 04 00 00 c0    	cmp    $0xc0000004,%esi
401c5b:	75 15                	jne    0x401c72
401c5d:	8b 35 10 03 47 00    	mov    0x470310,%esi
401c63:	eb bb                	jmp    0x401c20
401c65:	5b                   	pop    %ebx
401c66:	5f                   	pop    %edi
401c67:	5e                   	pop    %esi
401c68:	b8 08 00 00 00       	mov    $0x8,%eax
401c6d:	5d                   	pop    %ebp
401c6e:	83 c4 64             	add    $0x64,%esp
401c71:	c3                   	ret
401c72:	85 f6                	test   %esi,%esi
401c74:	0f 88 9c 00 00 00    	js     0x401d16
401c7a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
401c80:	8b 4b 04             	mov    0x4(%ebx),%ecx
401c83:	89 4c 24 14          	mov    %ecx,0x14(%esp)