40ec67:	66 83 f8 01          	cmp    $0x1,%ax
40ec6b:	0f 85 e1 9d 01 00    	jne    0x428a52
40ec71:	8b 87 80 06 00 00    	mov    0x680(%edi),%eax
40ec77:	85 c0                	test   %eax,%eax
40ec79:	0f 85 bd 9d 01 00    	jne    0x428a3c
40ec7f:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ec85:	50                   	push   %eax
40ec86:	ff 15 1c 30 45 00    	call   *0x45301c
40ec8c:	85 db                	test   %ebx,%ebx
40ec8e:	0f 88 89 09 00 00    	js     0x40f61d
40ec94:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ec9a:	50                   	push   %eax
40ec9b:	ff 15 00 30 45 00    	call   *0x453000
40eca1:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40eca7:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40ecad:	51                   	push   %ecx
40ecae:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40ecb4:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40ecbb:	00 00 00
40ecbe:	51                   	push   %ecx
40ecbf:	8b 30                	mov    (%eax),%esi
40ecc1:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40ecc7:	51                   	push   %ecx
40ecc8:	6a 00                	push   $0x0
40ecca:	68 3c 69 40 00       	push   $0x40693c
40eccf:	8b 76 10             	mov    0x10(%esi),%esi
40ecd2:	8b ce                	mov    %esi,%ecx
40ecd4:	50                   	push   %eax
40ecd5:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40ecdc:	00 00 00
40ecdf:	ff 15 c4 12 45 00    	call   *0x4512c4
40ece5:	ff d6                	call   *%esi
40ece7:	85 c0                	test   %eax,%eax
40ece9:	0f 88 bf 9d 01 00    	js     0x428aae
40ecef:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40ecf6:	66 83 f8 08          	cmp    $0x8,%ax
40ecfa:	0f 84 59 09 00 00    	je     0x40f659
40ed00:	66 83 f8 01          	cmp    $0x1,%ax
40ed04:	0f 85 9a 9d 01 00    	jne    0x428aa4
40ed0a:	8b 87 90 06 00 00    	mov    0x690(%edi),%eax
40ed10:	85 c0                	test   %eax,%eax
40ed12:	0f 85 76 9d 01 00    	jne    0x428a8e
40ed18:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ed1e:	50                   	push   %eax
40ed1f:	ff 15 1c 30 45 00    	call   *0x45301c
40ed25:	85 db                	test   %ebx,%ebx
40ed27:	0f 88 f0 08 00 00    	js     0x40f61d
40ed2d:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ed33:	50                   	push   %eax
40ed34:	ff 15 00 30 45 00    	call   *0x453000
40ed3a:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40ed40:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40ed46:	51                   	push   %ecx
40ed47:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40ed4d:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40ed54:	00 00 00
40ed57:	51                   	push   %ecx
40ed58:	8b 30                	mov    (%eax),%esi
40ed5a:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40ed60:	51                   	push   %ecx
40ed61:	6a 00                	push   $0x0
40ed63:	68 14 69 40 00       	push   $0x406914
40ed68:	8b 76 10             	mov    0x10(%esi),%esi
40ed6b:	8b ce                	mov    %esi,%ecx
40ed6d:	50                   	push   %eax
40ed6e:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40ed75:	00 00 00
40ed78:	ff 15 c4 12 45 00    	call   *0x4512c4
40ed7e:	ff d6                	call   *%esi
40ed80:	85 c0                	test   %eax,%eax
40ed82:	0f 88 5a 9d 01 00    	js     0x428ae2
40ed88:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40ed8f:	66 83 f8 03          	cmp    $0x3,%ax
40ed93:	0f 85 3e 9d 01 00    	jne    0x428ad7
40ed99:	8b 85 d0 fb ff ff    	mov    -0x430(%ebp),%eax
40ed9f:	83 e8 00             	sub    $0x0,%eax
40eda2:	0f 84 79 09 00 00    	je     0x40f721
40eda8:	83 e8 01             	sub    $0x1,%eax
40edab:	0f 85 0f 9d 01 00    	jne    0x428ac0
40edb1:	c7 87 54 06 00 00 01 	movl   $0x1,0x654(%edi)
40edb8:	00 00 00
40edbb:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40edc1:	50                   	push   %eax
40edc2:	ff 15 1c 30 45 00    	call   *0x45301c
40edc8:	85 db                	test   %ebx,%ebx
40edca:	0f 88 4d 08 00 00    	js     0x40f61d
40edd0:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40edd6:	50                   	push   %eax
40edd7:	ff 15 00 30 45 00    	call   *0x453000
40eddd:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40ede3:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40ede9:	51                   	push   %ecx
40edea:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40edf0:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40edf7:	00 00 00
40edfa:	51                   	push   %ecx
40edfb:	8b 30                	mov    (%eax),%esi
40edfd:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40ee03:	51                   	push   %ecx
40ee04:	6a 00                	push   $0x0
40ee06:	68 ec 68 40 00       	push   $0x4068ec
40ee0b:	8b 76 10             	mov    0x10(%esi),%esi
40ee0e:	8b ce                	mov    %esi,%ecx
40ee10:	50                   	push   %eax
40ee11:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40ee18:	00 00 00
40ee1b:	ff 15 c4 12 45 00    	call   *0x4512c4
40ee21:	ff d6                	call   *%esi
40ee23:	85 c0                	test   %eax,%eax
40ee25:	0f 88 eb 9c 01 00    	js     0x428b16
40ee2b:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40ee32:	66 83 f8 0b          	cmp    $0xb,%ax
40ee36:	0f 84 b8 9c 01 00    	je     0x428af4
40ee3c:	66 83 f8 01          	cmp    $0x1,%ax
40ee40:	0f 85 c6 9c 01 00    	jne    0x428b0c
40ee46:	c7 87 98 06 00 00 01 	movl   $0x1,0x698(%edi)
40ee4d:	00 00 00
40ee50:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ee56:	50                   	push   %eax
40ee57:	ff 15 1c 30 45 00    	call   *0x45301c
40ee5d:	85 db                	test   %ebx,%ebx
40ee5f:	0f 88 b8 07 00 00    	js     0x40f61d
40ee65:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ee6b:	50                   	push   %eax
40ee6c:	ff 15 00 30 45 00    	call   *0x453000
40ee72:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40ee78:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40ee7e:	51                   	push   %ecx
40ee7f:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40ee85:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40ee8c:	00 00 00
40ee8f:	51                   	push   %ecx
40ee90:	8b 30                	mov    (%eax),%esi
40ee92:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40ee98:	51                   	push   %ecx
40ee99:	6a 00                	push   $0x0
40ee9b:	68 c8 68 40 00       	push   $0x4068c8
40eea0:	8b 76 10             	mov    0x10(%esi),%esi
40eea3:	8b ce                	mov    %esi,%ecx
40eea5:	50                   	push   %eax
40eea6:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40eead:	00 00 00
40eeb0:	ff 15 c4 12 45 00    	call   *0x4512c4
40eeb6:	ff d6                	call   *%esi
40eeb8:	85 c0                	test   %eax,%eax
40eeba:	0f 88 8a 9c 01 00    	js     0x428b4a
40eec0:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40eec7:	66 83 f8 0b          	cmp    $0xb,%ax
40eecb:	0f 84 57 9c 01 00    	je     0x428b28
40eed1:	66 83 f8 01          	cmp    $0x1,%ax
40eed5:	0f 85 65 9c 01 00    	jne    0x428b40
40eedb:	c7 87 70 06 00 00 00 	movl   $0x0,0x670(%edi)
40eee2:	00 00 00
40eee5:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40eeeb:	50                   	push   %eax
40eeec:	ff 15 1c 30 45 00    	call   *0x45301c
40eef2:	85 db                	test   %ebx,%ebx
40eef4:	0f 88 23 07 00 00    	js     0x40f61d
40eefa:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ef00:	50                   	push   %eax
40ef01:	ff 15 00 30 45 00    	call   *0x453000
40ef07:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40ef0d:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40ef13:	51                   	push   %ecx
40ef14:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40ef1a:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40ef21:	00 00 00
40ef24:	51                   	push   %ecx
40ef25:	8b 30                	mov    (%eax),%esi
40ef27:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40ef2d:	51                   	push   %ecx
40ef2e:	6a 00                	push   $0x0
40ef30:	68 a8 68 40 00       	push   $0x4068a8
40ef35:	8b 76 10             	mov    0x10(%esi),%esi
40ef38:	8b ce                	mov    %esi,%ecx
40ef3a:	50                   	push   %eax
40ef3b:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40ef42:	00 00 00
40ef45:	ff 15 c4 12 45 00    	call   *0x4512c4
40ef4b:	ff d6                	call   *%esi
40ef4d:	85 c0                	test   %eax,%eax
40ef4f:	0f 88 29 9c 01 00    	js     0x428b7e
40ef55:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40ef5c:	66 83 f8 0b          	cmp    $0xb,%ax
40ef60:	0f 84 f6 9b 01 00    	je     0x428b5c
40ef66:	66 83 f8 01          	cmp    $0x1,%ax
40ef6a:	0f 85 04 9c 01 00    	jne    0x428b74
40ef70:	c7 87 68 06 00 00 00 	movl   $0x0,0x668(%edi)
40ef77:	00 00 00
40ef7a:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ef80:	50                   	push   %eax
40ef81:	ff 15 1c 30 45 00    	call   *0x45301c
40ef87:	85 db                	test   %ebx,%ebx
40ef89:	0f 88 8e 06 00 00    	js     0x40f61d
40ef8f:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40ef95:	50                   	push   %eax
40ef96:	ff 15 00 30 45 00    	call   *0x453000
40ef9c:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40efa2:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40efa8:	51                   	push   %ecx
40efa9:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40efaf:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40efb6:	00 00 00
40efb9:	51                   	push   %ecx
40efba:	8b 30                	mov    (%eax),%esi
40efbc:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40efc2:	51                   	push   %ecx
40efc3:	6a 00                	push   $0x0
40efc5:	68 74 68 40 00       	push   $0x406874
40efca:	8b 76 10             	mov    0x10(%esi),%esi
40efcd:	8b ce                	mov    %esi,%ecx
40efcf:	50                   	push   %eax
40efd0:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40efd7:	00 00 00
40efda:	ff 15 c4 12 45 00    	call   *0x4512c4
40efe0:	ff d6                	call   *%esi
40efe2:	85 c0                	test   %eax,%eax
40efe4:	0f 88 9a 9c 01 00    	js     0x428c84
40efea:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40eff1:	66 83 f8 08          	cmp    $0x8,%ax
40eff5:	0f 84 95 9b 01 00    	je     0x428b90
40effb:	66 83 f8 01          	cmp    $0x1,%ax
40efff:	0f 85 75 9c 01 00    	jne    0x428c7a
40f005:	8b 87 9c 06 00 00    	mov    0x69c(%edi),%eax
40f00b:	85 c0                	test   %eax,%eax
40f00d:	0f 85 51 9c 01 00    	jne    0x428c64
40f013:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f019:	50                   	push   %eax
40f01a:	ff 15 1c 30 45 00    	call   *0x45301c
40f020:	85 db                	test   %ebx,%ebx
40f022:	0f 88 f5 05 00 00    	js     0x40f61d
40f028:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f02e:	50                   	push   %eax
40f02f:	ff 15 00 30 45 00    	call   *0x453000
40f035:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40f03b:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40f041:	51                   	push   %ecx
40f042:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40f048:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40f04f:	00 00 00
40f052:	51                   	push   %ecx
40f053:	8b 30                	mov    (%eax),%esi
40f055:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40f05b:	51                   	push   %ecx
40f05c:	6a 00                	push   $0x0
40f05e:	68 38 68 40 00       	push   $0x406838
40f063:	8b 76 10             	mov    0x10(%esi),%esi
40f066:	8b ce                	mov    %esi,%ecx
40f068:	50                   	push   %eax
40f069:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40f070:	00 00 00
40f073:	ff 15 c4 12 45 00    	call   *0x4512c4
40f079:	ff d6                	call   *%esi
40f07b:	85 c0                	test   %eax,%eax
40f07d:	0f 88 07 9d 01 00    	js     0x428d8a
40f083:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40f08a:	66 83 f8 08          	cmp    $0x8,%ax
40f08e:	0f 84 02 9c 01 00    	je     0x428c96
40f094:	66 83 f8 01          	cmp    $0x1,%ax
40f098:	0f 85 e2 9c 01 00    	jne    0x428d80
40f09e:	8b 87 88 06 00 00    	mov    0x688(%edi),%eax
40f0a4:	85 c0                	test   %eax,%eax
40f0a6:	0f 85 be 9c 01 00    	jne    0x428d6a
40f0ac:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f0b2:	50                   	push   %eax
40f0b3:	ff 15 1c 30 45 00    	call   *0x45301c
40f0b9:	85 db                	test   %ebx,%ebx
40f0bb:	0f 88 5c 05 00 00    	js     0x40f61d
40f0c1:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f0c7:	50                   	push   %eax
40f0c8:	ff 15 00 30 45 00    	call   *0x453000
40f0ce:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40f0d4:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40f0da:	51                   	push   %ecx
40f0db:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40f0e1:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40f0e8:	00 00 00
40f0eb:	51                   	push   %ecx
40f0ec:	8b 30                	mov    (%eax),%esi
40f0ee:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40f0f4:	51                   	push   %ecx
40f0f5:	6a 00                	push   $0x0
40f0f7:	68 10 68 40 00       	push   $0x406810
40f0fc:	8b 76 10             	mov    0x10(%esi),%esi
40f0ff:	8b ce                	mov    %esi,%ecx
40f101:	50                   	push   %eax
40f102:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40f109:	00 00 00
40f10c:	ff 15 c4 12 45 00    	call   *0x4512c4
40f112:	ff d6                	call   *%esi
40f114:	85 c0                	test   %eax,%eax
40f116:	0f 88 a2 9c 01 00    	js     0x428dbe
40f11c:	66 8b 85 c8 fb ff ff 	mov    -0x438(%ebp),%ax
40f123:	66 83 f8 0b          	cmp    $0xb,%ax
40f127:	0f 84 6f 9c 01 00    	je     0x428d9c
40f12d:	66 83 f8 01          	cmp    $0x1,%ax
40f131:	0f 85 7d 9c 01 00    	jne    0x428db4
40f137:	c7 87 a4 06 00 00 00 	movl   $0x0,0x6a4(%edi)
40f13e:	00 00 00
40f141:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f147:	50                   	push   %eax
40f148:	ff 15 1c 30 45 00    	call   *0x45301c
40f14e:	85 db                	test   %ebx,%ebx
40f150:	0f 88 c7 04 00 00    	js     0x40f61d
40f156:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f15c:	50                   	push   %eax
40f15d:	ff 15 00 30 45 00    	call   *0x453000
40f163:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40f169:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40f16f:	51                   	push   %ecx
40f170:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40f176:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40f17d:	00 00 00
40f180:	51                   	push   %ecx
40f181:	8b 30                	mov    (%eax),%esi
40f183:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40f189:	51                   	push   %ecx
40f18a:	6a 00                	push   $0x0
40f18c:	68 d4 67 40 00       	push   $0x4067d4
40f191:	8b 76 10             	mov    0x10(%esi),%esi
40f194:	8b ce                	mov    %esi,%ecx
40f196:	50                   	push   %eax
40f197:	c7 85 dc fb ff ff 00 	movl   $0x0,-0x424(%ebp)
40f19e:	00 00 00
40f1a1:	ff 15 c4 12 45 00    	call   *0x4512c4
40f1a7:	ff d6                	call   *%esi
40f1a9:	85 c0                	test   %eax,%eax
40f1ab:	0f 89 1f 9c 01 00    	jns    0x428dd0
40f1b1:	3d 02 10 04 80       	cmp    $0x80041002,%eax
40f1b6:	0f 85 51 9c 01 00    	jne    0x428e0d
40f1bc:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f1c2:	50                   	push   %eax
40f1c3:	ff 15 1c 30 45 00    	call   *0x45301c
40f1c9:	85 db                	test   %ebx,%ebx
40f1cb:	0f 88 4c 04 00 00    	js     0x40f61d
40f1d1:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
40f1d7:	50                   	push   %eax
40f1d8:	ff 15 00 30 45 00    	call   *0x453000
40f1de:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
40f1e4:	8d 8d dc fb ff ff    	lea    -0x424(%ebp),%ecx
40f1ea:	51                   	push   %ecx
40f1eb:	8d 8d d8 fb ff ff    	lea    -0x428(%ebp),%ecx
40f1f1:	c7 85 d8 fb ff ff 00 	movl   $0x0,-0x428(%ebp)
40f1f8:	00 00 00
40f1fb:	51                   	push   %ecx
40f1fc:	8b 30                	mov    (%eax),%esi
40f1fe:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
40f204:	51                   	push   %ecx
40f205:	6a 00                	push   $0x0
40f207:	68 a0 67 40 00       	push   $0x4067a0