4019cd:	50                   	push   %eax
4019ce:	8b 45 f8             	mov    -0x8(%ebp),%eax
4019d1:	2b 45 f0             	sub    -0x10(%ebp),%eax
4019d4:	50                   	push   %eax
4019d5:	6a 00                	push   $0x0
4019d7:	6a 00                	push   $0x0
4019d9:	6a 00                	push   $0x0
4019db:	e8 bb bd 01 00       	call   0x41d79b
4019e0:	5f                   	pop    %edi
4019e1:	5e                   	pop    %esi
4019e2:	c9                   	leave
4019e3:	c2 0c 00             	ret    $0xc
4019e6:	55                   	push   %ebp
4019e7:	8b ec                	mov    %esp,%ebp
4019e9:	83 ec 10             	sub    $0x10,%esp
4019ec:	56                   	push   %esi
4019ed:	57                   	push   %edi
4019ee:	8b f1                	mov    %ecx,%esi
4019f0:	6a 01                	push   $0x1
4019f2:	6a 00                	push   $0x0
4019f4:	ff 76 1c             	push   0x1c(%esi)
4019f7:	ff 15 54 99 43 00    	call   *0x439954
4019fd:	8d 45 f0             	lea    -0x10(%ebp),%eax
401a00:	50                   	push   %eax
401a01:	ff 76 1c             	push   0x1c(%esi)
401a04:	ff 15 4c 99 43 00    	call   *0x43994c
401a0a:	8b 46 50             	mov    0x50(%esi),%eax
401a0d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
401a10:	8b 7d 0c             	mov    0xc(%ebp),%edi
401a13:	d1 e0                	shl    $1,%eax
401a15:	2b c8                	sub    %eax,%ecx
401a17:	3b f9                	cmp    %ecx,%edi
401a19:	7c 02                	jl     0x401a1d
401a1b:	8b f9                	mov    %ecx,%edi
401a1d:	3b f8                	cmp    %eax,%edi
401a1f:	7f 02                	jg     0x401a23
401a21:	8b f8                	mov    %eax,%edi
401a23:	8b 55 fc             	mov    -0x4(%ebp),%edx
401a26:	8b 4d 10             	mov    0x10(%ebp),%ecx
401a29:	2b d0                	sub    %eax,%edx
401a2b:	3b ca                	cmp    %edx,%ecx
401a2d:	7c 02                	jl     0x401a31
401a2f:	8b ca                	mov    %edx,%ecx
401a31:	8b 46 54             	mov    0x54(%esi),%eax
401a34:	d1 e0                	shl    $1,%eax
401a36:	3b c8                	cmp    %eax,%ecx
401a38:	7f 02                	jg     0x401a3c
401a3a:	8b c8                	mov    %eax,%ecx
401a3c:	89 7e 68             	mov    %edi,0x68(%esi)
401a3f:	89 4e 6c             	mov    %ecx,0x6c(%esi)
401a42:	5f                   	pop    %edi
401a43:	5e                   	pop    %esi
401a44:	c9                   	leave
401a45:	c2 0c 00             	ret    $0xc
401a48:	b8 90 94 42 00       	mov    $0x429490,%eax
401a4d:	c3                   	ret
401a4e:	e8 05 00 00 00       	call   0x401a58
401a53:	e9 0a 00 00 00       	jmp    0x401a62
401a58:	b9 b8 50 43 00       	mov    $0x4350b8,%ecx
401a5d:	e9 b8 f5 ff ff       	jmp    0x40101a
401a62:	68 6e 1a 40 00       	push   $0x401a6e
401a67:	e8 74 a2 00 00       	call   0x40bce0
401a6c:	59                   	pop    %ecx
401a6d:	c3                   	ret
401a6e:	f6 05 b0 50 43 00 01 	testb  $0x1,0x4350b0
401a75:	75 11                	jne    0x401a88
401a77:	80 0d b0 50 43 00 01 	orb    $0x1,0x4350b0
401a7e:	b9 b8 50 43 00       	mov    $0x4350b8,%ecx
401a83:	e9 be f5 ff ff       	jmp    0x401046
401a88:	c3                   	ret
401a89:	83 3d bc 50 43 00 00 	cmpl   $0x0,0x4350bc
401a90:	56                   	push   %esi
401a91:	8b f1                	mov    %ecx,%esi
401a93:	75 0c                	jne    0x401aa1
401a95:	6a 66                	push   $0x66
401a97:	b9 b8 50 43 00       	mov    $0x4350b8,%ecx
401a9c:	e8 e2 f6 ff ff       	call   0x401183
401aa1:	a1 bc 50 43 00       	mov    0x4350bc,%eax
401aa6:	89 86 bc 00 00 00    	mov    %eax,0xbc(%esi)
401aac:	e8 96 2c 02 00       	call   0x424747
401ab1:	8b 40 08             	mov    0x8(%eax),%eax
401ab4:	6a 04                	push   $0x4
401ab6:	50                   	push   %eax
401ab7:	ff 15 48 99 43 00    	call   *0x439948
401abd:	50                   	push   %eax
401abe:	6a 06                	push   $0x6
401ac0:	68 00 7f 00 00       	push   $0x7f00
401ac5:	6a 00                	push   $0x0
401ac7:	ff 15 70 99 43 00    	call   *0x439970
401acd:	50                   	push   %eax
401ace:	6a 03                	push   $0x3
401ad0:	e8 76 94 01 00       	call   0x41af4b
401ad5:	6a 00                	push   $0x0
401ad7:	8b ce                	mov    %esi,%ecx
401ad9:	ff 74 24 18          	push   0x18(%esp)
401add:	ff 74 24 18          	push   0x18(%esp)
401ae1:	ff 74 24 18          	push   0x18(%esp)
401ae5:	ff 74 24 18          	push   0x18(%esp)
401ae9:	50                   	push   %eax
401aea:	e8 01 fb 01 00       	call   0x4215f0
401aef:	5e                   	pop    %esi
401af0:	c2 10 00             	ret    $0x10
401af3:	56                   	push   %esi
401af4:	8b f1                	mov    %ecx,%esi
401af6:	e8 ba f9 01 00       	call   0x4214b5
401afb:	83 a6 c8 00 00 00 00 	andl   $0x0,0xc8(%esi)
401b02:	c7 06 e8 95 42 00    	movl   $0x4295e8,(%esi)
401b08:	c7 86 c4 00 00 00 14 	movl   $0x14,0xc4(%esi)
401b0f:	00 00 00
401b12:	8b c6                	mov    %esi,%eax
401b14:	5e                   	pop    %esi
401b15:	c3                   	ret
401b16:	b8 18 5a 42 00       	mov    $0x425a18,%eax
401b1b:	e8 10 a1 00 00       	call   0x40bc30
401b20:	83 ec 64             	sub    $0x64,%esp
401b23:	56                   	push   %esi
401b24:	8b f1                	mov    %ecx,%esi
401b26:	56                   	push   %esi
401b27:	8d 4d 90             	lea    -0x70(%ebp),%ecx
401b2a:	e8 d6 e1 01 00       	call   0x41fd05
401b2f:	ff b6 c8 00 00 00    	push   0xc8(%esi)
401b35:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
401b39:	8d 4d 90             	lea    -0x70(%ebp),%ecx
401b3c:	e8 b0 de 01 00       	call   0x41f9f1
401b41:	6a 05                	push   $0x5
401b43:	ff 15 58 99 43 00    	call   *0x439958
401b49:	50                   	push   %eax
401b4a:	8d 4d 90             	lea    -0x70(%ebp),%ecx
401b4d:	e8 67 de 01 00       	call   0x41f9b9
401b52:	8d 45 e4             	lea    -0x1c(%ebp),%eax
401b55:	50                   	push   %eax
401b56:	ff 76 1c             	push   0x1c(%esi)
401b59:	ff 15 4c 99 43 00    	call   *0x43994c
401b5f:	8d 45 e4             	lea    -0x1c(%ebp),%eax
401b62:	6a 25                	push   $0x25
401b64:	50                   	push   %eax
401b65:	6a ff                	push   $0xffffffff
401b67:	68 58 11 43 00       	push   $0x431158
401b6c:	ff 75 94             	push   -0x6c(%ebp)
401b6f:	ff 15 44 99 43 00    	call   *0x439944
401b75:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
401b79:	8d 4d 90             	lea    -0x70(%ebp),%ecx
401b7c:	e8 f6 e1 01 00       	call   0x41fd77
401b81:	8b 4d f4             	mov    -0xc(%ebp),%ecx
401b84:	5e                   	pop    %esi
401b85:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
401b8c:	c9                   	leave
401b8d:	c3                   	ret
401b8e:	8b 44 24 04          	mov    0x4(%esp),%eax
401b92:	56                   	push   %esi
401b93:	8b 70 04             	mov    0x4(%eax),%esi
401b96:	8b 10                	mov    (%eax),%edx
401b98:	2b b1 c4 00 00 00    	sub    0xc4(%ecx),%esi
401b9e:	8b c8                	mov    %eax,%ecx
401ba0:	f7 de                	neg    %esi
401ba2:	1b f6                	sbb    %esi,%esi
401ba4:	46                   	inc    %esi
401ba5:	56                   	push   %esi
401ba6:	ff 52 04             	call   *0x4(%edx)
401ba9:	5e                   	pop    %esi
401baa:	c2 04 00             	ret    $0x4
401bad:	56                   	push   %esi
401bae:	8b f1                	mov    %ecx,%esi
401bb0:	e8 2b 86 01 00       	call   0x41a1e0
401bb5:	0f b7 40 08          	movzwl 0x8(%eax),%eax
401bb9:	6a 01                	push   $0x1
401bbb:	6a 00                	push   $0x0
401bbd:	ff 76 1c             	push   0x1c(%esi)
401bc0:	89 86 c4 00 00 00    	mov    %eax,0xc4(%esi)
401bc6:	8b 04 85 48 11 43 00 	mov    0x431148(,%eax,4),%eax
401bcd:	89 86 c8 00 00 00    	mov    %eax,0xc8(%esi)
401bd3:	ff 15 54 99 43 00    	call   *0x439954
401bd9:	5e                   	pop    %esi
401bda:	c3                   	ret
401bdb:	b8 2f 5a 42 00       	mov    $0x425a2f,%eax
401be0:	e8 4b a0 00 00       	call   0x40bc30
401be5:	81 ec 80 00 00 00    	sub    $0x80,%esp
401beb:	56                   	push   %esi
401bec:	8b f1                	mov    %ecx,%esi
401bee:	6a 00                	push   $0x0
401bf0:	6a 00                	push   $0x0
401bf2:	ff b6 c8 00 00 00    	push   0xc8(%esi)
401bf8:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
401bfe:	e8 df 78 01 00       	call   0x4194e2
401c03:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
401c07:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
401c0d:	e8 7c 79 01 00       	call   0x41958e
401c12:	83 f8 01             	cmp    $0x1,%eax
401c15:	75 20                	jne    0x401c37
401c17:	8b 45 dc             	mov    -0x24(%ebp),%eax
401c1a:	6a 01                	push   $0x1
401c1c:	6a 00                	push   $0x0
401c1e:	89 86 c8 00 00 00    	mov    %eax,0xc8(%esi)
401c24:	ff 76 1c             	push   0x1c(%esi)
401c27:	c7 86 c4 00 00 00 19 	movl   $0x19,0xc4(%esi)
401c2e:	00 00 00
401c31:	ff 15 54 99 43 00    	call   *0x439954
401c37:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
401c3b:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
401c41:	e8 13 b3 01 00       	call   0x41cf59
401c46:	8b 4d f4             	mov    -0xc(%ebp),%ecx
401c49:	5e                   	pop    %esi
401c4a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
401c51:	c9                   	leave
401c52:	c3                   	ret
401c53:	b8 46 5a 42 00       	mov    $0x425a46,%eax
401c58:	e8 d3 9f 00 00       	call   0x40bc30
401c5d:	51                   	push   %ecx
401c5e:	68 e4 00 00 00       	push   $0xe4
401c63:	e8 99 b0 01 00       	call   0x41cd01
401c68:	59                   	pop    %ecx
401c69:	8b c8                	mov    %eax,%ecx
401c6b:	89 4d f0             	mov    %ecx,-0x10(%ebp)
401c6e:	33 c0                	xor    %eax,%eax
401c70:	3b c8                	cmp    %eax,%ecx
401c72:	89 45 fc             	mov    %eax,-0x4(%ebp)
401c75:	74 05                	je     0x401c7c
401c77:	e8 12 00 00 00       	call   0x401c8e
401c7c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
401c7f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
401c86:	c9                   	leave
401c87:	c3                   	ret
401c88:	b8 f0 96 42 00       	mov    $0x4296f0,%eax
401c8d:	c3                   	ret
401c8e:	b8 58 5a 42 00       	mov    $0x425a58,%eax
401c93:	e8 98 9f 00 00       	call   0x40bc30
401c98:	51                   	push   %ecx
401c99:	56                   	push   %esi
401c9a:	8b f1                	mov    %ecx,%esi
401c9c:	89 75 f0             	mov    %esi,-0x10(%ebp)
401c9f:	e8 2f 26 02 00       	call   0x4242d3
401ca4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
401ca8:	8d 4e 6c             	lea    0x6c(%esi),%ecx
401cab:	e8 cc f5 ff ff       	call   0x40127c
401cb0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
401cb3:	c7 06 28 97 42 00    	movl   $0x429728,(%esi)
401cb9:	8b c6                	mov    %esi,%eax
401cbb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
401cc2:	5e                   	pop    %esi
401cc3:	c9                   	leave
401cc4:	c3                   	ret
401cc5:	56                   	push   %esi
401cc6:	8b f1                	mov    %ecx,%esi
401cc8:	e8 53 00 00 00       	call   0x401d20
401ccd:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
401cd2:	74 07                	je     0x401cdb
401cd4:	56                   	push   %esi
401cd5:	e8 7d 00 00 00       	call   0x401d57
401cda:	59                   	pop    %ecx
401cdb:	8b c6                	mov    %esi,%eax
401cdd:	5e                   	pop    %esi
401cde:	c2 04 00             	ret    $0x4
401ce1:	b8 6c 5a 42 00       	mov    $0x425a6c,%eax
401ce6:	e8 45 9f 00 00       	call   0x40bc30
401ceb:	51                   	push   %ecx
401cec:	56                   	push   %esi
401ced:	8b f1                	mov    %ecx,%esi
401cef:	89 75 f0             	mov    %esi,-0x10(%ebp)
401cf2:	e8 dc 25 02 00       	call   0x4242d3
401cf7:	8b 45 08             	mov    0x8(%ebp),%eax
401cfa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
401cfe:	8d 4e 6c             	lea    0x6c(%esi),%ecx
401d01:	89 46 68             	mov    %eax,0x68(%esi)
401d04:	e8 73 f5 ff ff       	call   0x40127c
401d09:	8b 4d f4             	mov    -0xc(%ebp),%ecx
401d0c:	c7 06 28 97 42 00    	movl   $0x429728,(%esi)
401d12:	8b c6                	mov    %esi,%eax
401d14:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
401d1b:	5e                   	pop    %esi
401d1c:	c9                   	leave
401d1d:	c2 04 00             	ret    $0x4
401d20:	b8 80 5a 42 00       	mov    $0x425a80,%eax
401d25:	e8 06 9f 00 00       	call   0x40bc30
401d2a:	56                   	push   %esi
401d2b:	8b f1                	mov    %ecx,%esi
401d2d:	c7 06 28 97 42 00    	movl   $0x429728,(%esi)
401d33:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
401d37:	8d 4e 6c             	lea    0x6c(%esi),%ecx
401d3a:	e8 3a f6 ff ff       	call   0x401379
401d3f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
401d43:	8b ce                	mov    %esi,%ecx
401d45:	e8 6d 3a 02 00       	call   0x4257b7
401d4a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
401d4d:	5e                   	pop    %esi
401d4e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
401d55:	c9                   	leave
401d56:	c3                   	ret
401d57:	ff 35 c0 50 43 00    	push   0x4350c0
401d5d:	ff 15 74 97 43 00    	call   *0x439774
401d63:	ff 74 24 04          	push   0x4(%esp)
401d67:	e8 d1 af 01 00       	call   0x41cd3d
401d6c:	59                   	pop    %ecx
401d6d:	c3                   	ret
401d6e:	55                   	push   %ebp
401d6f:	8b ec                	mov    %esp,%ebp
401d71:	83 ec 10             	sub    $0x10,%esp
401d74:	53                   	push   %ebx
401d75:	56                   	push   %esi
401d76:	8b f1                	mov    %ecx,%esi
401d78:	57                   	push   %edi
401d79:	ff 76 68             	push   0x68(%esi)
401d7c:	e8 3f 85 01 00       	call   0x41a2c0
401d81:	8b d8                	mov    %eax,%ebx
401d83:	8d 45 f0             	lea    -0x10(%ebp),%eax
401d86:	50                   	push   %eax
401d87:	ff 73 1c             	push   0x1c(%ebx)
401d8a:	ff 15 4c 99 43 00    	call   *0x43994c
401d90:	8d 45 f0             	lea    -0x10(%ebp),%eax
401d93:	53                   	push   %ebx
401d94:	8d 7e 6c             	lea    0x6c(%esi),%edi
401d97:	50                   	push   %eax
401d98:	68 00 00 00 50       	push   $0x50000000
401d9d:	68 78 11 43 00       	push   $0x431178
401da2:	8b cf                	mov    %edi,%ecx
401da4:	e8 97 f4 ff ff       	call   0x401240
401da9:	85 c0                	test   %eax,%eax
401dab:	74 03                	je     0x401db0
401dad:	89 7e 1c             	mov    %edi,0x1c(%esi)
401db0:	5f                   	pop    %edi
401db1:	5e                   	pop    %esi
401db2:	5b                   	pop    %ebx
401db3:	c9                   	leave
401db4:	c3                   	ret
401db5:	e9 0c c5 01 00       	jmp    0x41e2c6
401dba:	b8 08 97 42 00       	mov    $0x429708,%eax
401dbf:	c3                   	ret
401dc0:	b8 b0 97 42 00       	mov    $0x4297b0,%eax
401dc5:	c3                   	ret
401dc6:	56                   	push   %esi
401dc7:	8b f1                	mov    %ecx,%esi
401dc9:	6a 00                	push   $0x0
401dcb:	e8 19 2b 02 00       	call   0x4248e9
401dd0:	c7 06 e8 97 42 00    	movl   $0x4297e8,(%esi)
401dd6:	8b c6                	mov    %esi,%eax
401dd8:	5e                   	pop    %esi
401dd9:	c3                   	ret
401dda:	56                   	push   %esi
401ddb:	8b f1                	mov    %ecx,%esi
401ddd:	e8 14 00 00 00       	call   0x401df6
401de2:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
401de7:	74 07                	je     0x401df0
401de9:	56                   	push   %esi
401dea:	e8 4e af 01 00       	call   0x41cd3d
401def:	59                   	pop    %ecx
401df0:	8b c6                	mov    %esi,%eax
401df2:	5e                   	pop    %esi
401df3:	c2 04 00             	ret    $0x4
401df6:	e9 38 2c 02 00       	jmp    0x424a33
401dfb:	e8 05 00 00 00       	call   0x401e05
401e00:	e9 0a 00 00 00       	jmp    0x401e0f