411e04:	d1 fe                	sar    $1,%esi
411e06:	74 4b                	je     0x411e53
411e08:	83 3d 9c 25 43 00 00 	cmpl   $0x0,0x43259c
411e0f:	75 42                	jne    0x411e53
411e11:	53                   	push   %ebx
411e12:	57                   	push   %edi
411e13:	52                   	push   %edx
411e14:	ff 15 28 a4 44 00    	call   *0x44a428
411e1a:	83 c4 0c             	add    $0xc,%esp
411e1d:	85 c0                	test   %eax,%eax
411e1f:	74 1f                	je     0x411e40
411e21:	8d 3c 77             	lea    (%edi,%esi,2),%edi
411e24:	83 c7 02             	add    $0x2,%edi
411e27:	8b f7                	mov    %edi,%esi
411e29:	8d 4e 02             	lea    0x2(%esi),%ecx
411e2c:	8d 64 24 00          	lea    0x0(%esp),%esp
411e30:	66 8b 06             	mov    (%esi),%ax
411e33:	83 c6 02             	add    $0x2,%esi
411e36:	66 85 c0             	test   %ax,%ax
411e39:	75 f5                	jne    0x411e30
411e3b:	8b 55 fc             	mov    -0x4(%ebp),%edx
411e3e:	eb c2                	jmp    0x411e02
411e40:	66 83 3c 5f 3d       	cmpw   $0x3d,(%edi,%ebx,2)
411e45:	8d 04 5f             	lea    (%edi,%ebx,2),%eax
411e48:	75 d7                	jne    0x411e21
411e4a:	8b 55 fc             	mov    -0x4(%ebp),%edx
411e4d:	83 c0 02             	add    $0x2,%eax
411e50:	89 45 f8             	mov    %eax,-0x8(%ebp)
411e53:	8b ca                	mov    %edx,%ecx
411e55:	e8 06 be ff ff       	call   0x40dc60
411e5a:	8b 45 f8             	mov    -0x8(%ebp),%eax
411e5d:	5e                   	pop    %esi
411e5e:	5b                   	pop    %ebx
411e5f:	5f                   	pop    %edi
411e60:	8b e5                	mov    %ebp,%esp
411e62:	5d                   	pop    %ebp
411e63:	c3                   	ret
411e64:	33 c0                	xor    %eax,%eax
411e66:	eb f7                	jmp    0x411e5f
411e68:	cc                   	int3
411e69:	cc                   	int3
411e6a:	cc                   	int3
411e6b:	cc                   	int3
411e6c:	cc                   	int3
411e6d:	cc                   	int3
411e6e:	cc                   	int3
411e6f:	cc                   	int3
411e70:	8b ff                	mov    %edi,%edi
411e72:	56                   	push   %esi
411e73:	57                   	push   %edi
411e74:	33 ff                	xor    %edi,%edi
411e76:	47                   	inc    %edi
411e77:	e8 2a 00 00 00       	call   0x411ea6
411e7c:	8b f0                	mov    %eax,%esi
411e7e:	85 f6                	test   %esi,%esi
411e80:	75 07                	jne    0x411e89
411e82:	8b c7                	mov    %edi,%eax
411e84:	5f                   	pop    %edi
411e85:	5e                   	pop    %esi
411e86:	c2 04 00             	ret    $0x4
411e89:	33 d2                	xor    %edx,%edx
411e8b:	8b ce                	mov    %esi,%ecx
411e8d:	e8 35 6d ff ff       	call   0x408bc7
411e92:	56                   	push   %esi
411e93:	6a 00                	push   $0x0
411e95:	8b f8                	mov    %eax,%edi
411e97:	ff 15 34 a1 44 00    	call   *0x44a134
411e9d:	50                   	push   %eax
411e9e:	ff 15 3c a1 44 00    	call   *0x44a13c
411ea4:	eb dc                	jmp    0x411e82
411ea6:	6a 18                	push   $0x18
411ea8:	68 50 ca 42 00       	push   $0x42ca50
411ead:	e8 de 5e 00 00       	call   0x417d90
411eb2:	8b 0d 98 67 43 00    	mov    0x436798,%ecx
411eb8:	85 c9                	test   %ecx,%ecx
411eba:	75 12                	jne    0x411ece
411ebc:	33 c0                	xor    %eax,%eax
411ebe:	8b 4d f0             	mov    -0x10(%ebp),%ecx
411ec1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
411ec8:	59                   	pop    %ecx
411ec9:	5f                   	pop    %edi
411eca:	5e                   	pop    %esi
411ecb:	5b                   	pop    %ebx
411ecc:	c9                   	leave
411ecd:	c3                   	ret
411ece:	49                   	dec    %ecx
411ecf:	89 0d 98 67 43 00    	mov    %ecx,0x436798
411ed5:	8b 15 9c 67 43 00    	mov    0x43679c,%edx
411edb:	8b 04 ca             	mov    (%edx,%ecx,8),%eax
411ede:	89 45 d8             	mov    %eax,-0x28(%ebp)
411ee1:	0f b7 44 ca 04       	movzwl 0x4(%edx,%ecx,8),%eax
411ee6:	66 85 c0             	test   %ax,%ax
411ee9:	0f 85 21 d2 00 00    	jne    0x41f110
411eef:	8b 15 9c 67 43 00    	mov    0x43679c,%edx
411ef5:	83 24 ca 00          	andl   $0x0,(%edx,%ecx,8)
411ef9:	85 c9                	test   %ecx,%ecx
411efb:	7f 05                	jg     0x411f02
411efd:	8b 45 d8             	mov    -0x28(%ebp),%eax
411f00:	eb bc                	jmp    0x411ebe
411f02:	81 f9 cd ff ff 7f    	cmp    $0x7fffffcd,%ecx
411f08:	7f f3                	jg     0x411efd
411f0a:	8d 41 32             	lea    0x32(%ecx),%eax
411f0d:	3b 05 94 67 43 00    	cmp    0x436794,%eax
411f13:	7f e8                	jg     0x411efd
411f15:	e9 41 d2 00 00       	jmp    0x41f15b
411f1a:	ff 15 1c a0 44 00    	call   *0x44a01c
411f20:	68 f0 c9 43 00       	push   $0x43c9f0
411f25:	50                   	push   %eax
411f26:	a3 a0 25 43 00       	mov    %eax,0x4325a0
411f2b:	ff 15 9c a1 44 00    	call   *0x44a19c
411f31:	85 c0                	test   %eax,%eax
411f33:	0f 84 4c d2 00 00    	je     0x41f185
411f39:	68 00 01 00 00       	push   $0x100
411f3e:	6a 00                	push   $0x0
411f40:	68 f0 8a 44 00       	push   $0x448af0
411f45:	e8 73 60 00 00       	call   0x417fbd
411f4a:	83 c4 0c             	add    $0xc,%esp
411f4d:	80 3d f6 c9 43 00 00 	cmpb   $0x0,0x43c9f6
411f54:	0f 85 7d d2 00 00    	jne    0x41f1d7
411f5a:	c3                   	ret
411f5b:	8b ff                	mov    %edi,%edi
411f5d:	55                   	push   %ebp
411f5e:	8b ec                	mov    %esp,%ebp
411f60:	83 ec 28             	sub    $0x28,%esp
411f63:	8b 0d 74 e5 42 00    	mov    0x42e574,%ecx
411f69:	8d 45 ff             	lea    -0x1(%ebp),%eax
411f6c:	53                   	push   %ebx
411f6d:	56                   	push   %esi
411f6e:	57                   	push   %edi
411f6f:	8b fa                	mov    %edx,%edi
411f71:	8d 75 ff             	lea    -0x1(%ebp),%esi
411f74:	89 47 0c             	mov    %eax,0xc(%edi)
411f77:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
411f7d:	8b 50 04             	mov    0x4(%eax),%edx
411f80:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
411f86:	89 55 f4             	mov    %edx,-0xc(%ebp)
411f89:	3b f2                	cmp    %edx,%esi
411f8b:	0f 83 a5 00 00 00    	jae    0x412036
411f91:	3b 70 08             	cmp    0x8(%eax),%esi
411f94:	0f 86 9c 00 00 00    	jbe    0x412036
411f9a:	3b ca                	cmp    %edx,%ecx
411f9c:	0f 83 94 00 00 00    	jae    0x412036
411fa2:	3b 48 08             	cmp    0x8(%eax),%ecx
411fa5:	0f 86 8b 00 00 00    	jbe    0x412036
411fab:	6a 1c                	push   $0x1c
411fad:	8d 45 d8             	lea    -0x28(%ebp),%eax
411fb0:	50                   	push   %eax
411fb1:	51                   	push   %ecx
411fb2:	ff 15 ac a1 44 00    	call   *0x44a1ac
411fb8:	83 f8 1c             	cmp    $0x1c,%eax
411fbb:	75 79                	jne    0x412036
411fbd:	8b 75 dc             	mov    -0x24(%ebp),%esi
411fc0:	33 db                	xor    %ebx,%ebx
411fc2:	8b c6                	mov    %esi,%eax
411fc4:	89 75 f8             	mov    %esi,-0x8(%ebp)
411fc7:	6a 1c                	push   $0x1c
411fc9:	8d 4d d8             	lea    -0x28(%ebp),%ecx
411fcc:	51                   	push   %ecx
411fcd:	50                   	push   %eax
411fce:	ff 15 ac a1 44 00    	call   *0x44a1ac
411fd4:	83 f8 1c             	cmp    $0x1c,%eax
411fd7:	75 5d                	jne    0x412036
411fd9:	8b 45 d8             	mov    -0x28(%ebp),%eax
411fdc:	85 db                	test   %ebx,%ebx
411fde:	74 51                	je     0x412031
411fe0:	f7 45 ec 00 01 00 00 	testl  $0x100,-0x14(%ebp)
411fe7:	75 52                	jne    0x41203b
411fe9:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
411fec:	39 75 dc             	cmp    %esi,-0x24(%ebp)
411fef:	75 05                	jne    0x411ff6
411ff1:	03 c1                	add    %ecx,%eax
411ff3:	89 47 08             	mov    %eax,0x8(%edi)
411ff6:	43                   	inc    %ebx
411ff7:	81 fb e8 03 00 00    	cmp    $0x3e8,%ebx
411ffd:	7d 37                	jge    0x412036
411fff:	8b 45 f8             	mov    -0x8(%ebp),%eax
412002:	03 c1                	add    %ecx,%eax
412004:	89 45 f8             	mov    %eax,-0x8(%ebp)
412007:	39 75 dc             	cmp    %esi,-0x24(%ebp)
41200a:	74 bb                	je     0x411fc7
41200c:	8b 47 08             	mov    0x8(%edi),%eax
41200f:	89 37                	mov    %esi,(%edi)
412011:	3b 45 f4             	cmp    -0xc(%ebp),%eax
412014:	75 20                	jne    0x412036
412016:	3b 35 e0 a7 43 00    	cmp    0x43a7e0,%esi
41201c:	75 18                	jne    0x412036
41201e:	3b 05 e8 a7 43 00    	cmp    0x43a7e8,%eax
412024:	75 10                	jne    0x412036
412026:	3b c6                	cmp    %esi,%eax
412028:	76 0c                	jbe    0x412036
41202a:	33 c0                	xor    %eax,%eax
41202c:	5f                   	pop    %edi
41202d:	5e                   	pop    %esi
41202e:	5b                   	pop    %ebx
41202f:	c9                   	leave
412030:	c3                   	ret
412031:	3b 45 dc             	cmp    -0x24(%ebp),%eax
412034:	74 aa                	je     0x411fe0
412036:	33 c0                	xor    %eax,%eax
412038:	40                   	inc    %eax
412039:	eb f1                	jmp    0x41202c
41203b:	89 47 04             	mov    %eax,0x4(%edi)
41203e:	eb a9                	jmp    0x411fe9
412040:	83 3d 38 67 43 00 00 	cmpl   $0x0,0x436738
412047:	0f 85 c0 d1 00 00    	jne    0x41f20d
41204d:	c3                   	ret
41204e:	8b ff                	mov    %edi,%edi
412050:	55                   	push   %ebp
412051:	8b ec                	mov    %esp,%ebp
412053:	56                   	push   %esi
412054:	57                   	push   %edi
412055:	ff 75 08             	push   0x8(%ebp)
412058:	8b f2                	mov    %edx,%esi
41205a:	8b f9                	mov    %ecx,%edi
41205c:	e8 3f d3 ff ff       	call   0x40f3a0
412061:	68 4c 23 40 00       	push   $0x40234c
412066:	8b d6                	mov    %esi,%edx
412068:	8b cf                	mov    %edi,%ecx
41206a:	e8 d1 db ff ff       	call   0x40fc40
41206f:	ff 75 0c             	push   0xc(%ebp)
412072:	8b d6                	mov    %esi,%edx
412074:	8b cf                	mov    %edi,%ecx
412076:	e8 c5 db ff ff       	call   0x40fc40
41207b:	5f                   	pop    %edi
41207c:	5e                   	pop    %esi
41207d:	5d                   	pop    %ebp
41207e:	c2 08 00             	ret    $0x8
412081:	68 2c 02 00 00       	push   $0x22c
412086:	68 70 ca 42 00       	push   $0x42ca70
41208b:	e8 00 5d 00 00       	call   0x417d90
412090:	89 95 c8 fd ff ff    	mov    %edx,-0x238(%ebp)
412096:	8b f9                	mov    %ecx,%edi
412098:	83 a5 cc fd ff ff 00 	andl   $0x0,-0x234(%ebp)
41209f:	b9 ce ff 00 00       	mov    $0xffce,%ecx
4120a4:	e8 27 bc ff ff       	call   0x40dcd0
4120a9:	8b d8                	mov    %eax,%ebx
4120ab:	85 db                	test   %ebx,%ebx
4120ad:	0f 84 fa 00 00 00    	je     0x4121ad
4120b3:	8b cf                	mov    %edi,%ecx
4120b5:	e8 f6 90 ff ff       	call   0x40b1b0
4120ba:	8b f0                	mov    %eax,%esi
4120bc:	85 f6                	test   %esi,%esi
4120be:	0f 84 e9 00 00 00    	je     0x4121ad
4120c4:	68 e7 7f 00 00       	push   $0x7fe7
4120c9:	8b d3                	mov    %ebx,%edx
4120cb:	8b cf                	mov    %edi,%ecx
4120cd:	e8 3e d3 ff ff       	call   0x40f410
4120d2:	8b c8                	mov    %eax,%ecx
4120d4:	83 f9 01             	cmp    $0x1,%ecx
4120d7:	75 56                	jne    0x41212f
4120d9:	68 04 01 00 00       	push   $0x104
4120de:	8d 85 d0 fd ff ff    	lea    -0x230(%ebp),%eax
4120e4:	50                   	push   %eax
4120e5:	ff 15 48 a0 44 00    	call   *0x44a048
4120eb:	8b ce                	mov    %esi,%ecx
4120ed:	e8 34 8c ff ff       	call   0x40ad26
4120f2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4120f6:	56                   	push   %esi
4120f7:	53                   	push   %ebx
4120f8:	56                   	push   %esi
4120f9:	51                   	push   %ecx
4120fa:	8b 95 c8 fd ff ff    	mov    -0x238(%ebp),%edx
412100:	8b cf                	mov    %edi,%ecx
412102:	e8 51 73 ff ff       	call   0x409458
412107:	8b f0                	mov    %eax,%esi
412109:	89 b5 cc fd ff ff    	mov    %esi,-0x234(%ebp)
41210f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
412116:	e8 9a 00 00 00       	call   0x4121b5
41211b:	8b c6                	mov    %esi,%eax
41211d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
412120:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
412127:	59                   	pop    %ecx
412128:	5f                   	pop    %edi
412129:	5e                   	pop    %esi
41212a:	5b                   	pop    %ebx
41212b:	c9                   	leave
41212c:	c2 04 00             	ret    $0x4
41212f:	83 f9 02             	cmp    $0x2,%ecx
412132:	75 46                	jne    0x41217a
412134:	68 04 01 00 00       	push   $0x104
412139:	8d 85 d0 fd ff ff    	lea    -0x230(%ebp),%eax
41213f:	50                   	push   %eax
412140:	ff 15 48 a0 44 00    	call   *0x44a048
412146:	8b ce                	mov    %esi,%ecx
412148:	e8 d9 8b ff ff       	call   0x40ad26
41214d:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
412154:	6a 00                	push   $0x0
412156:	68 e7 7f 00 00       	push   $0x7fe7
41215b:	8b d3                	mov    %ebx,%edx
41215d:	8b cf                	mov    %edi,%ecx
41215f:	e8 e3 f8 ff ff       	call   0x411a47
412164:	8b f0                	mov    %eax,%esi
412166:	89 b5 cc fd ff ff    	mov    %esi,-0x234(%ebp)
41216c:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
412173:	e8 49 00 00 00       	call   0x4121c1
412178:	eb a1                	jmp    0x41211b
41217a:	83 f9 05             	cmp    $0x5,%ecx
41217d:	0f 84 bc d0 00 00    	je     0x41f23f
412183:	a1 a8 67 43 00       	mov    0x4367a8,%eax
412188:	a3 dc 65 43 00       	mov    %eax,0x4365dc
41218d:	83 f9 03             	cmp    $0x3,%ecx
412190:	74 1b                	je     0x4121ad
412192:	b9 31 23 00 00       	mov    $0x2331,%ecx
412197:	3b c1                	cmp    %ecx,%eax
412199:	0f 85 ae d0 00 00    	jne    0x41f24d
41219f:	ff 77 38             	push   0x38(%edi)
4121a2:	6a 01                	push   $0x1
4121a4:	51                   	push   %ecx
4121a5:	e8 3a 57 ff ff       	call   0x4078e4
4121aa:	83 c4 0c             	add    $0xc,%esp
4121ad:	33 c0                	xor    %eax,%eax
4121af:	40                   	inc    %eax
4121b0:	e9 68 ff ff ff       	jmp    0x41211d
4121b5:	8d 8d d0 fd ff ff    	lea    -0x230(%ebp),%ecx
4121bb:	e8 12 00 00 00       	call   0x4121d2
4121c0:	c3                   	ret
4121c1:	8d 8d d0 fd ff ff    	lea    -0x230(%ebp),%ecx
4121c7:	e8 06 00 00 00       	call   0x4121d2
4121cc:	c3                   	ret
4121cd:	e9 49 ff ff ff       	jmp    0x41211b
4121d2:	85 c9                	test   %ecx,%ecx
4121d4:	74 09                	je     0x4121df
4121d6:	80 3d 5c 67 43 00 00 	cmpb   $0x0,0x43675c
4121dd:	75 01                	jne    0x4121e0
4121df:	c3                   	ret
4121e0:	83 3d 48 67 43 00 00 	cmpl   $0x0,0x436748
4121e7:	75 f6                	jne    0x4121df
4121e9:	e9 6e d0 00 00       	jmp    0x41f25c
4121ee:	8b ff                	mov    %edi,%edi
4121f0:	55                   	push   %ebp
4121f1:	8b ec                	mov    %esp,%ebp
4121f3:	51                   	push   %ecx
4121f4:	83 3d 48 67 43 00 00 	cmpl   $0x0,0x436748
4121fb:	56                   	push   %esi
4121fc:	8b f1                	mov    %ecx,%esi
4121fe:	75 2c                	jne    0x41222c
412200:	85 f6                	test   %esi,%esi
412202:	74 31                	je     0x412235
412204:	8b 4e 38             	mov    0x38(%esi),%ecx
412207:	85 c9                	test   %ecx,%ecx
412209:	74 2a                	je     0x412235
41220b:	8d 51 02             	lea    0x2(%ecx),%edx
41220e:	66 8b 01             	mov    (%ecx),%ax
412211:	83 c1 02             	add    $0x2,%ecx
412214:	66 85 c0             	test   %ax,%ax
412217:	75 f5                	jne    0x41220e
412219:	2b ca                	sub    %edx,%ecx
41221b:	d1 f9                	sar    $1,%ecx
41221d:	74 16                	je     0x412235
41221f:	51                   	push   %ecx