40dc64:	8b 70 0c             	mov    0xc(%eax),%esi
40dc67:	8b ce                	mov    %esi,%ecx
40dc69:	ff 15 18 34 43 00    	call   *0x433418
40dc6f:	ff d6                	call   *%esi
40dc71:	5e                   	pop    %esi
40dc72:	c3                   	ret
40dc73:	8b ff                	mov    %edi,%edi
40dc75:	53                   	push   %ebx
40dc76:	56                   	push   %esi
40dc77:	57                   	push   %edi
40dc78:	8b f2                	mov    %edx,%esi
40dc7a:	8b f9                	mov    %ecx,%edi
40dc7c:	ff 15 30 32 43 00    	call   *0x433230
40dc82:	33 db                	xor    %ebx,%ebx
40dc84:	39 5e 20             	cmp    %ebx,0x20(%esi)
40dc87:	74 07                	je     0x40dc90
40dc89:	8b ce                	mov    %esi,%ecx
40dc8b:	e8 46 f6 ff ff       	call   0x40d2d6
40dc90:	0f b7 46 54          	movzwl 0x54(%esi),%eax
40dc94:	8b d7                	mov    %edi,%edx
40dc96:	6a 01                	push   $0x1
40dc98:	6a 01                	push   $0x1
40dc9a:	50                   	push   %eax
40dc9b:	8b ce                	mov    %esi,%ecx
40dc9d:	89 5e 40             	mov    %ebx,0x40(%esi)
40dca0:	e8 72 ea ff ff       	call   0x40c717
40dca5:	39 5e 48             	cmp    %ebx,0x48(%esi)
40dca8:	74 08                	je     0x40dcb2
40dcaa:	6a 01                	push   $0x1
40dcac:	ff 15 bc 32 43 00    	call   *0x4332bc
40dcb2:	5f                   	pop    %edi
40dcb3:	89 5e 48             	mov    %ebx,0x48(%esi)
40dcb6:	89 5e 44             	mov    %ebx,0x44(%esi)
40dcb9:	89 5e 4c             	mov    %ebx,0x4c(%esi)
40dcbc:	5e                   	pop    %esi
40dcbd:	5b                   	pop    %ebx
40dcbe:	c3                   	ret
40dcbf:	8b ff                	mov    %edi,%edi
40dcc1:	55                   	push   %ebp
40dcc2:	8b ec                	mov    %esp,%ebp
40dcc4:	83 ec 60             	sub    $0x60,%esp
40dcc7:	a1 64 10 41 00       	mov    0x411064,%eax
40dccc:	33 c5                	xor    %ebp,%eax
40dcce:	89 45 fc             	mov    %eax,-0x4(%ebp)
40dcd1:	56                   	push   %esi
40dcd2:	57                   	push   %edi
40dcd3:	6a 3c                	push   $0x3c
40dcd5:	33 ff                	xor    %edi,%edi
40dcd7:	8d 45 a0             	lea    -0x60(%ebp),%eax
40dcda:	57                   	push   %edi
40dcdb:	50                   	push   %eax
40dcdc:	8b f1                	mov    %ecx,%esi
40dcde:	e8 24 2e 00 00       	call   0x410b07
40dce3:	83 c4 0c             	add    $0xc,%esp
40dce6:	8d 45 a0             	lea    -0x60(%ebp),%eax
40dce9:	50                   	push   %eax
40dcea:	56                   	push   %esi
40dceb:	ff 15 dc 32 43 00    	call   *0x4332dc
40dcf1:	8d 45 ec             	lea    -0x14(%ebp),%eax
40dcf4:	89 7d ec             	mov    %edi,-0x14(%ebp)
40dcf7:	50                   	push   %eax
40dcf8:	56                   	push   %esi
40dcf9:	89 7d f0             	mov    %edi,-0x10(%ebp)
40dcfc:	89 7d f4             	mov    %edi,-0xc(%ebp)
40dcff:	c7 45 f8 3c 01 00 00 	movl   $0x13c,-0x8(%ebp)
40dd06:	ff 15 7c 32 43 00    	call   *0x43327c
40dd0c:	8b 45 f8             	mov    -0x8(%ebp),%eax
40dd0f:	a3 64 1f 43 00       	mov    %eax,0x431f64
40dd14:	8d 45 dc             	lea    -0x24(%ebp),%eax
40dd17:	50                   	push   %eax
40dd18:	6a 77                	push   $0x77
40dd1a:	56                   	push   %esi
40dd1b:	ff 15 14 33 43 00    	call   *0x433314
40dd21:	50                   	push   %eax
40dd22:	ff 15 e0 31 43 00    	call   *0x4331e0
40dd28:	6a 60                	push   $0x60
40dd2a:	56                   	push   %esi
40dd2b:	ff 15 8c 32 43 00    	call   *0x43328c
40dd31:	50                   	push   %eax
40dd32:	6a 01                	push   $0x1
40dd34:	ff 15 80 31 43 00    	call   *0x433180
40dd3a:	8b 0d 3c 1f 43 00    	mov    0x431f3c,%ecx
40dd40:	2b 4d a8             	sub    -0x58(%ebp),%ecx
40dd43:	03 45 d4             	add    -0x2c(%ebp),%eax
40dd46:	03 c8                	add    %eax,%ecx
40dd48:	03 4d e8             	add    -0x18(%ebp),%ecx
40dd4b:	89 0d 60 1f 43 00    	mov    %ecx,0x431f60
40dd51:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40dd54:	5f                   	pop    %edi
40dd55:	33 cd                	xor    %ebp,%ecx
40dd57:	5e                   	pop    %esi
40dd58:	e8 d3 26 00 00       	call   0x410430
40dd5d:	c9                   	leave
40dd5e:	c3                   	ret
40dd5f:	8b ff                	mov    %edi,%edi
40dd61:	55                   	push   %ebp
40dd62:	8b ec                	mov    %esp,%ebp
40dd64:	81 ec 04 02 00 00    	sub    $0x204,%esp
40dd6a:	a1 64 10 41 00       	mov    0x411064,%eax
40dd6f:	33 c5                	xor    %ebp,%eax
40dd71:	89 45 fc             	mov    %eax,-0x4(%ebp)
40dd74:	53                   	push   %ebx
40dd75:	56                   	push   %esi
40dd76:	57                   	push   %edi
40dd77:	33 db                	xor    %ebx,%ebx
40dd79:	8b f1                	mov    %ecx,%esi
40dd7b:	53                   	push   %ebx
40dd7c:	53                   	push   %ebx
40dd7d:	68 f0 00 00 00       	push   $0xf0
40dd82:	6a 77                	push   $0x77
40dd84:	56                   	push   %esi
40dd85:	ff 15 14 33 43 00    	call   *0x433314
40dd8b:	50                   	push   %eax
40dd8c:	ff 15 10 33 43 00    	call   *0x433310
40dd92:	53                   	push   %ebx
40dd93:	48                   	dec    %eax
40dd94:	53                   	push   %ebx
40dd95:	f7 d8                	neg    %eax
40dd97:	68 4e 01 00 00       	push   $0x14e
40dd9c:	1b c0                	sbb    %eax,%eax
40dd9e:	68 ca 00 00 00       	push   $0xca
40dda3:	ff 35 10 19 43 00    	push   0x431910
40dda9:	f7 d8                	neg    %eax
40ddab:	a3 34 13 41 00       	mov    %eax,0x411334
40ddb0:	ff 15 14 33 43 00    	call   *0x433314
40ddb6:	50                   	push   %eax
40ddb7:	ff 15 10 33 43 00    	call   *0x433310
40ddbd:	33 ff                	xor    %edi,%edi
40ddbf:	47                   	inc    %edi
40ddc0:	39 1d 34 13 41 00    	cmp    %ebx,0x411334
40ddc6:	75 74                	jne    0x40de3c
40ddc8:	39 1d 8c 25 43 00    	cmp    %ebx,0x43258c
40ddce:	75 08                	jne    0x40ddd8
40ddd0:	39 1d 88 25 43 00    	cmp    %ebx,0x432588
40ddd6:	74 1b                	je     0x40ddf3
40ddd8:	a1 90 25 43 00       	mov    0x432590,%eax
40dddd:	89 3d 78 26 43 00    	mov    %edi,0x432678
40dde3:	85 c0                	test   %eax,%eax
40dde5:	74 07                	je     0x40ddee
40dde7:	50                   	push   %eax
40dde8:	ff 15 00 33 43 00    	call   *0x433300
40ddee:	e8 e8 88 ff ff       	call   0x4066db
40ddf3:	68 82 00 00 00       	push   $0x82
40ddf8:	56                   	push   %esi
40ddf9:	ff 15 14 33 43 00    	call   *0x433314
40ddff:	85 c0                	test   %eax,%eax
40de01:	74 12                	je     0x40de15
40de03:	8b c8                	mov    %eax,%ecx
40de05:	e8 d1 5f ff ff       	call   0x403ddb
40de0a:	3d b0 04 00 00       	cmp    $0x4b0,%eax
40de0f:	0f 84 91 00 00 00    	je     0x40dea6
40de15:	53                   	push   %ebx
40de16:	53                   	push   %ebx
40de17:	68 4e 01 00 00       	push   $0x14e
40de1c:	68 82 00 00 00       	push   $0x82
40de21:	ff 35 10 19 43 00    	push   0x431910
40de27:	ff 15 14 33 43 00    	call   *0x433314
40de2d:	50                   	push   %eax
40de2e:	ff 15 10 33 43 00    	call   *0x433310
40de34:	89 3d 78 26 43 00    	mov    %edi,0x432678
40de3a:	eb 6a                	jmp    0x40dea6
40de3c:	68 5c 15 40 00       	push   $0x40155c
40de41:	68 84 00 00 00       	push   $0x84
40de46:	56                   	push   %esi
40de47:	89 1d 78 26 43 00    	mov    %ebx,0x432678
40de4d:	89 1d 74 26 43 00    	mov    %ebx,0x432674
40de53:	ff 15 10 32 43 00    	call   *0x433210
40de59:	68 00 01 00 00       	push   $0x100
40de5e:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
40de64:	50                   	push   %eax
40de65:	68 93 01 00 00       	push   $0x193
40de6a:	ff 35 0c 19 41 00    	push   0x41190c
40de70:	ff 15 20 33 43 00    	call   *0x433320
40de76:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
40de7c:	bf 85 00 00 00       	mov    $0x85,%edi
40de81:	50                   	push   %eax
40de82:	57                   	push   %edi
40de83:	56                   	push   %esi
40de84:	ff 15 10 32 43 00    	call   *0x433210
40de8a:	53                   	push   %ebx
40de8b:	57                   	push   %edi
40de8c:	56                   	push   %esi
40de8d:	ff 15 14 33 43 00    	call   *0x433314
40de93:	50                   	push   %eax
40de94:	ff 15 14 32 43 00    	call   *0x433214
40de9a:	33 d2                	xor    %edx,%edx
40de9c:	8b ce                	mov    %esi,%ecx
40de9e:	e8 e8 05 00 00       	call   0x40e48b
40dea3:	33 ff                	xor    %edi,%edi
40dea5:	47                   	inc    %edi
40dea6:	8b ce                	mov    %esi,%ecx
40dea8:	e8 69 00 00 00       	call   0x40df16
40dead:	8b ce                	mov    %esi,%ecx
40deaf:	e8 c0 b7 ff ff       	call   0x409674
40deb4:	33 c0                	xor    %eax,%eax
40deb6:	39 3d 34 13 41 00    	cmp    %edi,0x411334
40debc:	53                   	push   %ebx
40debd:	0f 94 c0             	sete   %al
40dec0:	50                   	push   %eax
40dec1:	68 f1 00 00 00       	push   $0xf1
40dec6:	6a 77                	push   $0x77
40dec8:	56                   	push   %esi
40dec9:	ff 15 14 33 43 00    	call   *0x433314
40decf:	50                   	push   %eax
40ded0:	ff 15 10 33 43 00    	call   *0x433310
40ded6:	57                   	push   %edi
40ded7:	53                   	push   %ebx
40ded8:	56                   	push   %esi
40ded9:	ff 15 fc 31 43 00    	call   *0x4331fc
40dedf:	39 1d 78 26 43 00    	cmp    %ebx,0x432678
40dee5:	75 08                	jne    0x40deef
40dee7:	39 1d 74 26 43 00    	cmp    %ebx,0x432674
40deed:	74 12                	je     0x40df01
40deef:	53                   	push   %ebx
40def0:	68 82 00 01 00       	push   $0x10082
40def5:	68 11 01 00 00       	push   $0x111
40defa:	56                   	push   %esi
40defb:	ff 15 10 33 43 00    	call   *0x433310
40df01:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40df04:	33 c0                	xor    %eax,%eax
40df06:	5f                   	pop    %edi
40df07:	5e                   	pop    %esi
40df08:	33 cd                	xor    %ebp,%ecx
40df0a:	5b                   	pop    %ebx
40df0b:	e8 20 25 00 00       	call   0x410430
40df10:	c9                   	leave
40df11:	c2 04 00             	ret    $0x4
40df14:	cc                   	int3
40df15:	cc                   	int3
40df16:	8b ff                	mov    %edi,%edi
40df18:	55                   	push   %ebp
40df19:	8b ec                	mov    %esp,%ebp
40df1b:	83 ec 14             	sub    $0x14,%esp
40df1e:	a1 64 10 41 00       	mov    0x411064,%eax
40df23:	33 c5                	xor    %ebp,%eax
40df25:	89 45 fc             	mov    %eax,-0x4(%ebp)
40df28:	56                   	push   %esi
40df29:	57                   	push   %edi
40df2a:	8d 45 ec             	lea    -0x14(%ebp),%eax
40df2d:	8b f1                	mov    %ecx,%esi
40df2f:	50                   	push   %eax
40df30:	56                   	push   %esi
40df31:	ff 15 e0 31 43 00    	call   *0x4331e0
40df37:	8b 45 f4             	mov    -0xc(%ebp),%eax
40df3a:	2b 45 ec             	sub    -0x14(%ebp),%eax
40df3d:	83 3d 34 13 41 00 00 	cmpl   $0x0,0x411334
40df44:	75 1a                	jne    0x40df60
40df46:	6a 01                	push   $0x1
40df48:	ff 35 60 1f 43 00    	push   0x431f60
40df4e:	50                   	push   %eax
40df4f:	ff 75 f0             	push   -0x10(%ebp)
40df52:	ff 75 ec             	push   -0x14(%ebp)
40df55:	56                   	push   %esi
40df56:	ff 15 88 32 43 00    	call   *0x433288
40df5c:	33 ff                	xor    %edi,%edi
40df5e:	eb 18                	jmp    0x40df78
40df60:	33 ff                	xor    %edi,%edi
40df62:	47                   	inc    %edi
40df63:	57                   	push   %edi
40df64:	ff 35 64 1f 43 00    	push   0x431f64
40df6a:	50                   	push   %eax
40df6b:	ff 75 f0             	push   -0x10(%ebp)
40df6e:	ff 75 ec             	push   -0x14(%ebp)
40df71:	56                   	push   %esi
40df72:	ff 15 88 32 43 00    	call   *0x433288
40df78:	57                   	push   %edi
40df79:	68 81 00 00 00       	push   $0x81
40df7e:	56                   	push   %esi
40df7f:	ff 15 14 33 43 00    	call   *0x433314
40df85:	50                   	push   %eax
40df86:	ff 15 f4 31 43 00    	call   *0x4331f4
40df8c:	57                   	push   %edi
40df8d:	68 82 00 00 00       	push   $0x82
40df92:	56                   	push   %esi
40df93:	ff 15 14 33 43 00    	call   *0x433314
40df99:	50                   	push   %eax
40df9a:	ff 15 f4 31 43 00    	call   *0x4331f4
40dfa0:	57                   	push   %edi
40dfa1:	68 c9 00 00 00       	push   $0xc9
40dfa6:	56                   	push   %esi
40dfa7:	ff 15 14 33 43 00    	call   *0x433314
40dfad:	50                   	push   %eax
40dfae:	ff 15 f4 31 43 00    	call   *0x4331f4
40dfb4:	57                   	push   %edi
40dfb5:	68 ca 00 00 00       	push   $0xca
40dfba:	56                   	push   %esi
40dfbb:	ff 15 14 33 43 00    	call   *0x433314
40dfc1:	50                   	push   %eax
40dfc2:	ff 15 f4 31 43 00    	call   *0x4331f4
40dfc8:	57                   	push   %edi
40dfc9:	68 83 00 00 00       	push   $0x83
40dfce:	56                   	push   %esi
40dfcf:	ff 15 14 33 43 00    	call   *0x433314
40dfd5:	50                   	push   %eax
40dfd6:	ff 15 f4 31 43 00    	call   *0x4331f4
40dfdc:	57                   	push   %edi
40dfdd:	68 84 00 00 00       	push   $0x84
40dfe2:	56                   	push   %esi
40dfe3:	ff 15 14 33 43 00    	call   *0x433314
40dfe9:	50                   	push   %eax
40dfea:	ff 15 f4 31 43 00    	call   *0x4331f4
40dff0:	57                   	push   %edi
40dff1:	68 85 00 00 00       	push   $0x85
40dff6:	56                   	push   %esi
40dff7:	ff 15 14 33 43 00    	call   *0x433314
40dffd:	50                   	push   %eax
40dffe:	ff 15 f4 31 43 00    	call   *0x4331f4
40e004:	57                   	push   %edi
40e005:	68 bc 02 00 00       	push   $0x2bc
40e00a:	56                   	push   %esi
40e00b:	ff 15 14 33 43 00    	call   *0x433314
40e011:	50                   	push   %eax
40e012:	ff 15 f4 31 43 00    	call   *0x4331f4
40e018:	57                   	push   %edi
40e019:	68 bd 02 00 00       	push   $0x2bd
40e01e:	56                   	push   %esi
40e01f:	ff 15 14 33 43 00    	call   *0x433314
40e025:	50                   	push   %eax
40e026:	ff 15 f4 31 43 00    	call   *0x4331f4
40e02c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40e02f:	5f                   	pop    %edi
40e030:	33 cd                	xor    %ebp,%ecx
40e032:	5e                   	pop    %esi
40e033:	e8 f8 23 00 00       	call   0x410430
40e038:	c9                   	leave
40e039:	c3                   	ret
40e03a:	8b ff                	mov    %edi,%edi
40e03c:	55                   	push   %ebp
40e03d:	8b ec                	mov    %esp,%ebp
40e03f:	83 ec 0c             	sub    $0xc,%esp
40e042:	8b 15 cc 1f 43 00    	mov    0x431fcc,%edx
40e048:	56                   	push   %esi
40e049:	8b f1                	mov    %ecx,%esi
40e04b:	8b 0d 10 19 43 00    	mov    0x431910,%ecx
40e051:	57                   	push   %edi
40e052:	8b 3d 10 27 43 00    	mov    0x432710,%edi
40e058:	e8 54 01 00 00       	call   0x40e1b1
40e05d:	a1 48 26 43 00       	mov    0x432648,%eax
40e062:	8b ce                	mov    %esi,%ecx
40e064:	0f b7 15 c4 1f 43 00 	movzwl 0x431fc4,%edx
40e06b:	8d 14 50             	lea    (%eax,%edx,2),%edx
40e06e:	66 8b 02             	mov    (%edx),%ax
40e071:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
40e075:	8d 45 fc             	lea    -0x4(%ebp),%eax
40e078:	50                   	push   %eax
40e079:	e8 44 e2 ff ff       	call   0x40c2c2
40e07e:	f7 05 18 19 43 00 00 	testl  $0x20000000,0x431918
40e085:	00 00 20
40e088:	66 8b 4d fc          	mov    -0x4(%ebp),%cx
40e08c:	74 26                	je     0x40e0b4