410dea:	8d 85 30 a8 ff ff    	lea    -0x57d0(%ebp),%eax
410df0:	50                   	push   %eax
410df1:	8d 85 68 bf ff ff    	lea    -0x4098(%ebp),%eax
410df7:	50                   	push   %eax
410df8:	57                   	push   %edi
410df9:	51                   	push   %ecx
410dfa:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410e00:	e8 60 aa ff ff       	call   0x40b865
410e05:	8b f0                	mov    %eax,%esi
410e07:	89 b5 3c a8 ff ff    	mov    %esi,-0x57c4(%ebp)
410e0d:	85 f6                	test   %esi,%esi
410e0f:	75 0f                	jne    0x410e20
410e11:	c7 85 ac a7 ff ff 01 	movl   $0x1,-0x5854(%ebp)
410e18:	00 00 00
410e1b:	e9 9c 00 00 00       	jmp    0x410ebc
410e20:	81 fe 05 12 04 80    	cmp    $0x80041205,%esi
410e26:	75 2b                	jne    0x410e53
410e28:	68 30 0d 04 00       	push   $0x40d30
410e2d:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410e33:	e8 a7 d8 ff ff       	call   0x40e6df
410e38:	8d 8d 0c a8 ff ff    	lea    -0x57f4(%ebp),%ecx
410e3e:	e8 05 b4 ff ff       	call   0x40c248
410e43:	8d 8d 10 a8 ff ff    	lea    -0x57f0(%ebp),%ecx
410e49:	e8 fa b3 ff ff       	call   0x40c248
410e4e:	e9 98 f1 ff ff       	jmp    0x40ffeb
410e53:	8b ce                	mov    %esi,%ecx
410e55:	e8 96 0d 00 00       	call   0x411bf0
410e5a:	85 c0                	test   %eax,%eax
410e5c:	74 0c                	je     0x410e6a
410e5e:	6a 00                	push   $0x0
410e60:	57                   	push   %edi
410e61:	ff 15 54 a0 43 00    	call   *0x43a054
410e67:	56                   	push   %esi
410e68:	eb c3                	jmp    0x410e2d
410e6a:	c7 85 ac a7 ff ff 00 	movl   $0x0,-0x5854(%ebp)
410e71:	00 00 00
410e74:	85 f6                	test   %esi,%esi
410e76:	79 44                	jns    0x410ebc
410e78:	81 fe 16 0d 04 80    	cmp    $0x80040d16,%esi
410e7e:	75 65                	jne    0x410ee5
410e80:	83 bd 34 a8 ff ff 00 	cmpl   $0x0,-0x57cc(%ebp)
410e87:	74 9f                	je     0x410e28
410e89:	8b 8d d4 a7 ff ff    	mov    -0x582c(%ebp),%ecx
410e8f:	51                   	push   %ecx
410e90:	8b 01                	mov    (%ecx),%eax
410e92:	8b 70 1c             	mov    0x1c(%eax),%esi
410e95:	8b ce                	mov    %esi,%ecx
410e97:	ff 15 20 a5 43 00    	call   *0x43a520
410e9d:	ff d6                	call   *%esi
410e9f:	83 f8 01             	cmp    $0x1,%eax
410ea2:	75 18                	jne    0x410ebc
410ea4:	83 bd f8 a7 ff ff 00 	cmpl   $0x0,-0x5808(%ebp)
410eab:	75 04                	jne    0x410eb1
410ead:	85 db                	test   %ebx,%ebx
410eaf:	74 0b                	je     0x410ebc
410eb1:	8b 8d 3c a8 ff ff    	mov    -0x57c4(%ebp),%ecx
410eb7:	e8 f4 b4 01 00       	call   0x42c3b0
410ebc:	33 c0                	xor    %eax,%eax
410ebe:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410ec4:	39 85 34 a8 ff ff    	cmp    %eax,-0x57cc(%ebp)
410eca:	0f 95 c0             	setne  %al
410ecd:	50                   	push   %eax
410ece:	e8 54 d7 ff ff       	call   0x40e627
410ed3:	8b d8                	mov    %eax,%ebx
410ed5:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
410edb:	85 db                	test   %ebx,%ebx
410edd:	79 15                	jns    0x410ef4
410edf:	53                   	push   %ebx
410ee0:	e9 48 ff ff ff       	jmp    0x410e2d
410ee5:	83 bd 34 a8 ff ff 00 	cmpl   $0x0,-0x57cc(%ebp)
410eec:	75 9b                	jne    0x410e89
410eee:	56                   	push   %esi
410eef:	e9 39 ff ff ff       	jmp    0x410e2d
410ef4:	c7 85 14 a8 ff ff 00 	movl   $0x0,-0x57ec(%ebp)
410efb:	00 00 00
410efe:	c6 45 fc 18          	movb   $0x18,-0x4(%ebp)
410f02:	8d 85 34 a8 ff ff    	lea    -0x57cc(%ebp),%eax
410f08:	83 bd 34 a8 ff ff 00 	cmpl   $0x0,-0x57cc(%ebp)
410f0f:	75 06                	jne    0x410f17
410f11:	8d 85 30 a8 ff ff    	lea    -0x57d0(%ebp),%eax
410f17:	50                   	push   %eax
410f18:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
410f1e:	e8 f1 d6 ff ff       	call   0x40e614
410f23:	ff b5 2c a8 ff ff    	push   -0x57d4(%ebp)
410f29:	51                   	push   %ecx
410f2a:	ff b5 c8 a7 ff ff    	push   -0x5838(%ebp)
410f30:	e8 cb 0d 00 00       	call   0x411d00
410f35:	85 c0                	test   %eax,%eax
410f37:	74 2a                	je     0x410f63
410f39:	68 20 00 07 80       	push   $0x80070020
410f3e:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410f44:	c7 85 3c a8 ff ff 20 	movl   $0x80070020,-0x57c4(%ebp)
410f4b:	00 07 80
410f4e:	e8 8c d7 ff ff       	call   0x40e6df
410f53:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
410f59:	e8 b0 2a 00 00       	call   0x413a0e
410f5e:	e9 d5 fe ff ff       	jmp    0x410e38
410f63:	8b 85 0c b8 ff ff    	mov    -0x47f4(%ebp),%eax
410f69:	8b c8                	mov    %eax,%ecx
410f6b:	83 e1 08             	and    $0x8,%ecx
410f6e:	c7 85 60 a8 ff ff 01 	movl   $0x1,-0x57a0(%ebp)
410f75:	00 00 00
410f78:	83 e0 02             	and    $0x2,%eax
410f7b:	89 8d a0 a7 ff ff    	mov    %ecx,-0x5860(%ebp)
410f81:	8d 8d 74 a8 ff ff    	lea    -0x578c(%ebp),%ecx
410f87:	c7 85 64 a8 ff ff 00 	movl   $0x0,-0x579c(%ebp)
410f8e:	00 00 00
410f91:	c7 85 f0 a7 ff ff 00 	movl   $0x0,-0x5810(%ebp)
410f98:	00 00 00
410f9b:	c7 85 f4 a7 ff ff 00 	movl   $0x0,-0x580c(%ebp)
410fa2:	00 00 00
410fa5:	89 85 b0 a7 ff ff    	mov    %eax,-0x5850(%ebp)
410fab:	e8 92 47 00 00       	call   0x415742
410fb0:	c6 45 fc 19          	movb   $0x19,-0x4(%ebp)
410fb4:	33 c0                	xor    %eax,%eax
410fb6:	8b b5 14 a8 ff ff    	mov    -0x57ec(%ebp),%esi
410fbc:	89 85 cc a7 ff ff    	mov    %eax,-0x5834(%ebp)
410fc2:	85 c0                	test   %eax,%eax
410fc4:	0f 85 79 0a 00 00    	jne    0x411a43
410fca:	ff b5 30 a8 ff ff    	push   -0x57d0(%ebp)
410fd0:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
410fd6:	e8 45 0c 00 00       	call   0x411c20
410fdb:	85 c0                	test   %eax,%eax
410fdd:	0f 84 fc 00 00 00    	je     0x4110df
410fe3:	83 bd 40 bd ff ff 00 	cmpl   $0x0,-0x42c0(%ebp)
410fea:	0f 86 ef 00 00 00    	jbe    0x4110df
410ff0:	f6 85 0c b8 ff ff 02 	testb  $0x2,-0x47f4(%ebp)
410ff7:	0f 84 e2 00 00 00    	je     0x4110df
410ffd:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
411003:	e8 41 4c 01 00       	call   0x425c49
411008:	84 c0                	test   %al,%al
41100a:	74 0b                	je     0x411017
41100c:	ff b5 38 a8 ff ff    	push   -0x57c8(%ebp)
411012:	e8 6b 78 01 00       	call   0x428882
411017:	ff b5 2c a8 ff ff    	push   -0x57d4(%ebp)
41101d:	8b 95 d0 a7 ff ff    	mov    -0x5830(%ebp),%edx
411023:	8d 85 fc a7 ff ff    	lea    -0x5804(%ebp),%eax
411029:	51                   	push   %ecx
41102a:	ff b5 c8 a7 ff ff    	push   -0x5838(%ebp)
411030:	8b 8d 38 bd ff ff    	mov    -0x42c8(%ebp),%ecx
411036:	ff b5 18 a8 ff ff    	push   -0x57e8(%ebp)
41103c:	ff b5 b4 a7 ff ff    	push   -0x584c(%ebp)
411042:	ff b5 d4 a7 ff ff    	push   -0x582c(%ebp)
411048:	50                   	push   %eax
411049:	8d 85 f0 a7 ff ff    	lea    -0x5810(%ebp),%eax
41104f:	50                   	push   %eax
411050:	8d 85 b0 b1 ff ff    	lea    -0x4e50(%ebp),%eax
411056:	50                   	push   %eax
411057:	e8 54 0d 00 00       	call   0x411db0
41105c:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
411062:	8b d8                	mov    %eax,%ebx
411064:	e8 e0 4b 01 00       	call   0x425c49
411069:	84 c0                	test   %al,%al
41106b:	74 0b                	je     0x411078
41106d:	8d 8d 28 a8 ff ff    	lea    -0x57d8(%ebp),%ecx
411073:	e8 5f 8c 00 00       	call   0x419cd7
411078:	81 fb 23 0d 04 80    	cmp    $0x80040d23,%ebx
41107e:	75 08                	jne    0x411088
411080:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
411086:	eb 06                	jmp    0x41108e
411088:	8b 9d 3c a8 ff ff    	mov    -0x57c4(%ebp),%ebx
41108e:	ff b5 2c a8 ff ff    	push   -0x57d4(%ebp)
411094:	51                   	push   %ecx
411095:	ff b5 c8 a7 ff ff    	push   -0x5838(%ebp)
41109b:	e8 60 0c 00 00       	call   0x411d00
4110a0:	85 c0                	test   %eax,%eax
4110a2:	74 21                	je     0x4110c5
4110a4:	bb 20 00 07 80       	mov    $0x80070020,%ebx
4110a9:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
4110af:	53                   	push   %ebx
4110b0:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
4110b6:	e8 24 d6 ff ff       	call   0x40e6df
4110bb:	b8 01 00 00 00       	mov    $0x1,%eax
4110c0:	e9 f7 fe ff ff       	jmp    0x410fbc
4110c5:	85 db                	test   %ebx,%ebx
4110c7:	79 16                	jns    0x4110df
4110c9:	53                   	push   %ebx
4110ca:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
4110d0:	e8 0a d6 ff ff       	call   0x40e6df
4110d5:	b8 01 00 00 00       	mov    $0x1,%eax
4110da:	e9 dd fe ff ff       	jmp    0x410fbc
4110df:	6a 00                	push   $0x0
4110e1:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
4110e7:	e8 34 0b 00 00       	call   0x411c20
4110ec:	85 c0                	test   %eax,%eax
4110ee:	0f 85 1b 08 00 00    	jne    0x41190f
4110f4:	8b 1e                	mov    (%esi),%ebx
4110f6:	8d 85 78 a7 ff ff    	lea    -0x5888(%ebp),%eax
4110fc:	50                   	push   %eax
4110fd:	6a 00                	push   $0x0
4110ff:	6a 00                	push   $0x0
411101:	8b 5b 0c             	mov    0xc(%ebx),%ebx
411104:	8b cb                	mov    %ebx,%ecx
411106:	6a 5f                	push   $0x5f
411108:	56                   	push   %esi
411109:	ff 15 20 a5 43 00    	call   *0x43a520
41110f:	ff d3                	call   *%ebx
411111:	8b d8                	mov    %eax,%ebx
411113:	8b cb                	mov    %ebx,%ecx
411115:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
41111b:	e8 d0 0a 00 00       	call   0x411bf0
411120:	85 c0                	test   %eax,%eax
411122:	74 29                	je     0x41114d
411124:	53                   	push   %ebx
411125:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
41112b:	e8 af d5 ff ff       	call   0x40e6df
411130:	6a 00                	push   $0x0
411132:	57                   	push   %edi
411133:	c7 85 cc a7 ff ff 01 	movl   $0x1,-0x5834(%ebp)
41113a:	00 00 00
41113d:	ff 15 54 a0 43 00    	call   *0x43a054
411143:	b8 01 00 00 00       	mov    $0x1,%eax
411148:	e9 75 fe ff ff       	jmp    0x410fc2
41114d:	85 db                	test   %ebx,%ebx
41114f:	79 33                	jns    0x411184
411151:	ff b5 30 a8 ff ff    	push   -0x57d0(%ebp)
411157:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
41115d:	e8 be 0a 00 00       	call   0x411c20
411162:	85 c0                	test   %eax,%eax
411164:	0f 84 7f 07 00 00    	je     0x4118e9
41116a:	68 04 24 04 80       	push   $0x80042404
41116f:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
411175:	e8 65 d5 ff ff       	call   0x40e6df
41117a:	b8 01 00 00 00       	mov    $0x1,%eax
41117f:	e9 38 fe ff ff       	jmp    0x410fbc
411184:	f6 85 0c b8 ff ff 0a 	testb  $0xa,-0x47f4(%ebp)
41118b:	0f 84 58 07 00 00    	je     0x4118e9
411191:	8d 85 bc bf ff ff    	lea    -0x4044(%ebp),%eax
411197:	c7 85 08 a8 ff ff 01 	movl   $0x1,-0x57f8(%ebp)
41119e:	00 00 00
4111a1:	89 85 f8 a7 ff ff    	mov    %eax,-0x5808(%ebp)
4111a7:	8d 85 c0 df ff ff    	lea    -0x2040(%ebp),%eax
4111ad:	89 85 ec a7 ff ff    	mov    %eax,-0x5814(%ebp)
4111b3:	c7 85 e8 a7 ff ff 00 	movl   $0x0,-0x5818(%ebp)
4111ba:	00 00 00
4111bd:	c7 85 c0 a7 ff ff 00 	movl   $0x0,-0x5840(%ebp)
4111c4:	00 00 00
4111c7:	85 db                	test   %ebx,%ebx
4111c9:	79 14                	jns    0x4111df
4111cb:	81 fb 07 17 04 80    	cmp    $0x80041707,%ebx
4111d1:	74 0c                	je     0x4111df
4111d3:	81 fb 08 17 04 80    	cmp    $0x80041708,%ebx
4111d9:	0f 85 02 06 00 00    	jne    0x4117e1
4111df:	8b 85 f4 a7 ff ff    	mov    -0x580c(%ebp),%eax
4111e5:	3b 85 00 a8 ff ff    	cmp    -0x5800(%ebp),%eax
4111eb:	72 29                	jb     0x411216
4111ed:	77 0e                	ja     0x4111fd
4111ef:	8b 85 f0 a7 ff ff    	mov    -0x5810(%ebp),%eax
4111f5:	3b 85 fc a7 ff ff    	cmp    -0x5804(%ebp),%eax
4111fb:	72 19                	jb     0x411216
4111fd:	ff b5 34 a8 ff ff    	push   -0x57cc(%ebp)
411203:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
411209:	e8 12 0a 00 00       	call   0x411c20
41120e:	85 c0                	test   %eax,%eax
411210:	0f 84 cb 05 00 00    	je     0x4117e1
411216:	83 bd 44 bb ff ff 00 	cmpl   $0x0,-0x44bc(%ebp)
41121d:	0f 85 be 05 00 00    	jne    0x4117e1
411223:	ff b5 30 a8 ff ff    	push   -0x57d0(%ebp)
411229:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
41122f:	e8 ec 09 00 00       	call   0x411c20
411234:	85 c0                	test   %eax,%eax
411236:	74 24                	je     0x41125c
411238:	83 bd 60 a8 ff ff 00 	cmpl   $0x0,-0x57a0(%ebp)
41123f:	75 1b                	jne    0x41125c
411241:	8b 85 64 a8 ff ff    	mov    -0x579c(%ebp),%eax
411247:	85 c0                	test   %eax,%eax
411249:	74 11                	je     0x41125c
41124b:	50                   	push   %eax
41124c:	ff 15 64 a0 43 00    	call   *0x43a064
411252:	c7 85 64 a8 ff ff 00 	movl   $0x0,-0x579c(%ebp)
411259:	00 00 00
41125c:	ff b5 2c a8 ff ff    	push   -0x57d4(%ebp)
411262:	51                   	push   %ecx
411263:	ff b5 c8 a7 ff ff    	push   -0x5838(%ebp)
411269:	e8 92 0a 00 00       	call   0x411d00
41126e:	85 c0                	test   %eax,%eax
411270:	74 10                	je     0x411282
411272:	bb 20 00 07 80       	mov    $0x80070020,%ebx
411277:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
41127d:	e9 45 ff ff ff       	jmp    0x4111c7
411282:	8b 95 18 a8 ff ff    	mov    -0x57e8(%ebp),%edx
411288:	83 7a 14 00          	cmpl   $0x0,0x14(%edx)
41128c:	74 10                	je     0x41129e
41128e:	bb 23 0d 04 80       	mov    $0x80040d23,%ebx
411293:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
411299:	e9 29 ff ff ff       	jmp    0x4111c7
41129e:	ff b5 30 a8 ff ff    	push   -0x57d0(%ebp)
4112a4:	8d 8d 14 a8 ff ff    	lea    -0x57ec(%ebp),%ecx
4112aa:	e8 71 09 00 00       	call   0x411c20
4112af:	85 c0                	test   %eax,%eax
4112b1:	74 08                	je     0x4112bb
4112b3:	8d 4a 24             	lea    0x24(%edx),%ecx
4112b6:	e8 c4 ab 00 00       	call   0x41be7f
4112bb:	8b 06                	mov    (%esi),%eax
4112bd:	8d 8d 40 a8 ff ff    	lea    -0x57c0(%ebp),%ecx
4112c3:	51                   	push   %ecx
4112c4:	56                   	push   %esi
4112c5:	8b 58 10             	mov    0x10(%eax),%ebx
4112c8:	8b cb                	mov    %ebx,%ecx
4112ca:	ff 15 20 a5 43 00    	call   *0x43a520
4112d0:	ff d3                	call   *%ebx
4112d2:	8b d8                	mov    %eax,%ebx
4112d4:	8b cb                	mov    %ebx,%ecx
4112d6:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
4112dc:	e8 0f 09 00 00       	call   0x411bf0
4112e1:	85 c0                	test   %eax,%eax
4112e3:	74 0e                	je     0x4112f3
4112e5:	6a 00                	push   $0x0
4112e7:	57                   	push   %edi
4112e8:	ff 15 54 a0 43 00    	call   *0x43a054
4112ee:	e9 d4 fe ff ff       	jmp    0x4111c7
4112f3:	81 fb 1b 12 04 00    	cmp    $0x4121b,%ebx
4112f9:	0f 84 d7 04 00 00    	je     0x4117d6
4112ff:	81 fb 3e 17 04 80    	cmp    $0x8004173e,%ebx
411305:	0f 84 cb 04 00 00    	je     0x4117d6
41130b:	85 db                	test   %ebx,%ebx
41130d:	0f 88 b8 fe ff ff    	js     0x4111cb
411313:	83 bd 08 a8 ff ff 00 	cmpl   $0x0,-0x57f8(%ebp)
41131a:	74 0a                	je     0x411326
41131c:	c7 85 44 a8 ff ff 03 	movl   $0x3,-0x57bc(%ebp)
411323:	00 00 00
411326:	33 c0                	xor    %eax,%eax
411328:	83 bd 48 a8 ff ff 01 	cmpl   $0x1,-0x57b8(%ebp)
41132f:	8b c8                	mov    %eax,%ecx
411331:	89 85 08 a8 ff ff    	mov    %eax,-0x57f8(%ebp)
411337:	89 8d c4 a7 ff ff    	mov    %ecx,-0x583c(%ebp)
41133d:	0f 85 f1 02 00 00    	jne    0x411634
411343:	39 85 a0 a7 ff ff    	cmp    %eax,-0x5860(%ebp)
411349:	0f 84 78 fe ff ff    	je     0x4111c7
41134f:	89 85 04 a8 ff ff    	mov    %eax,-0x57fc(%ebp)
411355:	8b 85 18 a8 ff ff    	mov    -0x57e8(%ebp),%eax
41135b:	c7 85 e8 a7 ff ff 00 	movl   $0x1000,-0x5818(%ebp)
411362:	10 00 00
411365:	39 48 14             	cmp    %ecx,0x14(%eax)
411368:	74 16                	je     0x411380
41136a:	bb 23 0d 04 80       	mov    $0x80040d23,%ebx
41136f:	89 8d 08 a8 ff ff    	mov    %ecx,-0x57f8(%ebp)
411375:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
41137b:	e9 47 fe ff ff       	jmp    0x4111c7
411380:	8b 1e                	mov    (%esi),%ebx
411382:	8d 85 e8 a7 ff ff    	lea    -0x5818(%ebp),%eax
411388:	ff b5 f8 a7 ff ff    	push   -0x5808(%ebp)
41138e:	50                   	push   %eax
41138f:	8b 5b 14             	mov    0x14(%ebx),%ebx
411392:	8b cb                	mov    %ebx,%ecx
411394:	56                   	push   %esi
411395:	ff 15 20 a5 43 00    	call   *0x43a520
41139b:	ff d3                	call   *%ebx
41139d:	8b d8                	mov    %eax,%ebx
41139f:	8b cb                	mov    %ebx,%ecx