404c20:	00 00 00
404c23:	eb 51                	jmp    0x404c76
404c25:	39 85 f4 fb ff ff    	cmp    %eax,-0x40c(%ebp)
404c2b:	7e 06                	jle    0x404c33
404c2d:	89 85 f4 fb ff ff    	mov    %eax,-0x40c(%ebp)
404c33:	81 bd f4 fb ff ff a3 	cmpl   $0xa3,-0x40c(%ebp)
404c3a:	00 00 00
404c3d:	7e 37                	jle    0x404c76
404c3f:	8b b5 f4 fb ff ff    	mov    -0x40c(%ebp),%esi
404c45:	81 c6 5d 01 00 00    	add    $0x15d,%esi
404c4b:	56                   	push   %esi
404c4c:	e8 6e 1c 00 00       	call   0x4068bf
404c51:	59                   	pop    %ecx
404c52:	89 85 c4 fb ff ff    	mov    %eax,-0x43c(%ebp)
404c58:	85 c0                	test   %eax,%eax
404c5a:	74 10                	je     0x404c6c
404c5c:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
404c62:	89 b5 ec fb ff ff    	mov    %esi,-0x414(%ebp)
404c68:	8b d8                	mov    %eax,%ebx
404c6a:	eb 0a                	jmp    0x404c76
404c6c:	c7 85 f4 fb ff ff a3 	movl   $0xa3,-0x40c(%ebp)
404c73:	00 00 00
404c76:	8b 07                	mov    (%edi),%eax
404c78:	8b 35 90 f0 40 00    	mov    0x40f090,%esi
404c7e:	83 c7 08             	add    $0x8,%edi
404c81:	89 85 90 fb ff ff    	mov    %eax,-0x470(%ebp)
404c87:	8b 47 fc             	mov    -0x4(%edi),%eax
404c8a:	89 85 94 fb ff ff    	mov    %eax,-0x46c(%ebp)
404c90:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
404c96:	50                   	push   %eax
404c97:	ff b5 98 fb ff ff    	push   -0x468(%ebp)
404c9d:	0f be 85 e4 fb ff ff 	movsbl -0x41c(%ebp),%eax
404ca4:	ff b5 f4 fb ff ff    	push   -0x40c(%ebp)
404caa:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
404cb0:	50                   	push   %eax
404cb1:	ff b5 ec fb ff ff    	push   -0x414(%ebp)
404cb7:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
404cbd:	53                   	push   %ebx
404cbe:	50                   	push   %eax
404cbf:	ff 35 18 2e 41 00    	push   0x412e18
404cc5:	ff d6                	call   *%esi
404cc7:	ff d0                	call   *%eax
404cc9:	8b bd f8 fb ff ff    	mov    -0x408(%ebp),%edi
404ccf:	83 c4 1c             	add    $0x1c,%esp
404cd2:	81 e7 80 00 00 00    	and    $0x80,%edi
404cd8:	74 1d                	je     0x404cf7
404cda:	83 bd f4 fb ff ff 00 	cmpl   $0x0,-0x40c(%ebp)
404ce1:	75 14                	jne    0x404cf7
404ce3:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
404ce9:	50                   	push   %eax
404cea:	53                   	push   %ebx
404ceb:	ff 35 24 2e 41 00    	push   0x412e24
404cf1:	ff d6                	call   *%esi
404cf3:	ff d0                	call   *%eax
404cf5:	59                   	pop    %ecx
404cf6:	59                   	pop    %ecx
404cf7:	66 83 bd e4 fb ff ff 	cmpw   $0x67,-0x41c(%ebp)
404cfe:	67
404cff:	75 18                	jne    0x404d19
404d01:	85 ff                	test   %edi,%edi
404d03:	75 14                	jne    0x404d19
404d05:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
404d0b:	50                   	push   %eax
404d0c:	53                   	push   %ebx
404d0d:	ff 35 20 2e 41 00    	push   0x412e20
404d13:	ff d6                	call   *%esi
404d15:	ff d0                	call   *%eax
404d17:	59                   	pop    %ecx
404d18:	59                   	pop    %ecx
404d19:	80 3b 2d             	cmpb   $0x2d,(%ebx)
404d1c:	75 11                	jne    0x404d2f
404d1e:	81 8d f8 fb ff ff 00 	orl    $0x100,-0x408(%ebp)
404d25:	01 00 00
404d28:	43                   	inc    %ebx
404d29:	89 9d f0 fb ff ff    	mov    %ebx,-0x410(%ebp)
404d2f:	53                   	push   %ebx
404d30:	e9 06 fe ff ff       	jmp    0x404b3b
404d35:	c7 85 f4 fb ff ff 08 	movl   $0x8,-0x40c(%ebp)
404d3c:	00 00 00
404d3f:	89 95 bc fb ff ff    	mov    %edx,-0x444(%ebp)
404d45:	eb 24                	jmp    0x404d6b
404d47:	83 e8 73             	sub    $0x73,%eax
404d4a:	0f 84 69 fc ff ff    	je     0x4049b9
404d50:	2b c3                	sub    %ebx,%eax
404d52:	0f 84 8c fe ff ff    	je     0x404be4
404d58:	83 e8 03             	sub    $0x3,%eax
404d5b:	0f 85 bb 01 00 00    	jne    0x404f1c
404d61:	c7 85 bc fb ff ff 27 	movl   $0x27,-0x444(%ebp)
404d68:	00 00 00
404d6b:	f6 85 f8 fb ff ff 80 	testb  $0x80,-0x408(%ebp)
404d72:	c7 85 e4 fb ff ff 10 	movl   $0x10,-0x41c(%ebp)
404d79:	00 00 00
404d7c:	0f 84 6c fe ff ff    	je     0x404bee
404d82:	6a 30                	push   $0x30
404d84:	58                   	pop    %eax
404d85:	66 89 85 cc fb ff ff 	mov    %ax,-0x434(%ebp)
404d8c:	8b 85 bc fb ff ff    	mov    -0x444(%ebp),%eax
404d92:	83 c0 51             	add    $0x51,%eax
404d95:	66 89 85 ce fb ff ff 	mov    %ax,-0x432(%ebp)
404d9c:	89 9d d8 fb ff ff    	mov    %ebx,-0x428(%ebp)
404da2:	e9 47 fe ff ff       	jmp    0x404bee
404da7:	f7 c1 00 10 00 00    	test   $0x1000,%ecx
404dad:	0f 85 4d fe ff ff    	jne    0x404c00
404db3:	83 c7 04             	add    $0x4,%edi
404db6:	f6 c1 20             	test   $0x20,%cl
404db9:	74 18                	je     0x404dd3
404dbb:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
404dc1:	f6 c1 40             	test   $0x40,%cl
404dc4:	74 06                	je     0x404dcc
404dc6:	0f bf 47 fc          	movswl -0x4(%edi),%eax
404dca:	eb 04                	jmp    0x404dd0
404dcc:	0f b7 47 fc          	movzwl -0x4(%edi),%eax
404dd0:	99                   	cltd
404dd1:	eb 13                	jmp    0x404de6
404dd3:	8b 47 fc             	mov    -0x4(%edi),%eax
404dd6:	f6 c1 40             	test   $0x40,%cl
404dd9:	74 03                	je     0x404dde
404ddb:	99                   	cltd
404ddc:	eb 02                	jmp    0x404de0
404dde:	33 d2                	xor    %edx,%edx
404de0:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
404de6:	f6 c1 40             	test   $0x40,%cl
404de9:	74 1b                	je     0x404e06
404deb:	85 d2                	test   %edx,%edx
404ded:	7f 17                	jg     0x404e06
404def:	7c 04                	jl     0x404df5
404df1:	85 c0                	test   %eax,%eax
404df3:	73 11                	jae    0x404e06
404df5:	f7 d8                	neg    %eax
404df7:	83 d2 00             	adc    $0x0,%edx
404dfa:	f7 da                	neg    %edx
404dfc:	81 8d f8 fb ff ff 00 	orl    $0x100,-0x408(%ebp)
404e03:	01 00 00
404e06:	f7 85 f8 fb ff ff 00 	testl  $0x9000,-0x408(%ebp)
404e0d:	90 00 00
404e10:	8b fa                	mov    %edx,%edi
404e12:	8b d8                	mov    %eax,%ebx
404e14:	75 02                	jne    0x404e18
404e16:	33 ff                	xor    %edi,%edi
404e18:	83 bd f4 fb ff ff 00 	cmpl   $0x0,-0x40c(%ebp)
404e1f:	7d 0c                	jge    0x404e2d
404e21:	c7 85 f4 fb ff ff 01 	movl   $0x1,-0x40c(%ebp)
404e28:	00 00 00
404e2b:	eb 1a                	jmp    0x404e47
404e2d:	83 a5 f8 fb ff ff f7 	andl   $0xfffffff7,-0x408(%ebp)
404e34:	b8 00 02 00 00       	mov    $0x200,%eax
404e39:	39 85 f4 fb ff ff    	cmp    %eax,-0x40c(%ebp)
404e3f:	7e 06                	jle    0x404e47
404e41:	89 85 f4 fb ff ff    	mov    %eax,-0x40c(%ebp)
404e47:	8b c3                	mov    %ebx,%eax
404e49:	0b c7                	or     %edi,%eax
404e4b:	75 06                	jne    0x404e53
404e4d:	21 85 d8 fb ff ff    	and    %eax,-0x428(%ebp)
404e53:	8d b5 fb fd ff ff    	lea    -0x205(%ebp),%esi
404e59:	8b 85 f4 fb ff ff    	mov    -0x40c(%ebp),%eax
404e5f:	ff 8d f4 fb ff ff    	decl   -0x40c(%ebp)
404e65:	85 c0                	test   %eax,%eax
404e67:	7f 06                	jg     0x404e6f
404e69:	8b c3                	mov    %ebx,%eax
404e6b:	0b c7                	or     %edi,%eax
404e6d:	74 2d                	je     0x404e9c
404e6f:	8b 85 e4 fb ff ff    	mov    -0x41c(%ebp),%eax
404e75:	99                   	cltd
404e76:	52                   	push   %edx
404e77:	50                   	push   %eax
404e78:	57                   	push   %edi
404e79:	53                   	push   %ebx
404e7a:	e8 f1 5e 00 00       	call   0x40ad70
404e7f:	83 c1 30             	add    $0x30,%ecx
404e82:	89 9d 8c fb ff ff    	mov    %ebx,-0x474(%ebp)
404e88:	8b d8                	mov    %eax,%ebx
404e8a:	8b fa                	mov    %edx,%edi
404e8c:	83 f9 39             	cmp    $0x39,%ecx
404e8f:	7e 06                	jle    0x404e97
404e91:	03 8d bc fb ff ff    	add    -0x444(%ebp),%ecx
404e97:	88 0e                	mov    %cl,(%esi)
404e99:	4e                   	dec    %esi
404e9a:	eb bd                	jmp    0x404e59
404e9c:	8d 85 fb fd ff ff    	lea    -0x205(%ebp),%eax
404ea2:	2b c6                	sub    %esi,%eax
404ea4:	46                   	inc    %esi
404ea5:	f7 85 f8 fb ff ff 00 	testl  $0x200,-0x408(%ebp)
404eac:	02 00 00
404eaf:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
404eb5:	89 b5 f0 fb ff ff    	mov    %esi,-0x410(%ebp)
404ebb:	74 5f                	je     0x404f1c
404ebd:	85 c0                	test   %eax,%eax
404ebf:	74 07                	je     0x404ec8
404ec1:	8b c6                	mov    %esi,%eax
404ec3:	80 38 30             	cmpb   $0x30,(%eax)
404ec6:	74 54                	je     0x404f1c
404ec8:	ff 8d f0 fb ff ff    	decl   -0x410(%ebp)
404ece:	8b 85 f0 fb ff ff    	mov    -0x410(%ebp),%eax
404ed4:	ff 85 ec fb ff ff    	incl   -0x414(%ebp)
404eda:	c6 00 30             	movb   $0x30,(%eax)
404edd:	eb 3d                	jmp    0x404f1c
404edf:	85 ff                	test   %edi,%edi
404ee1:	75 0b                	jne    0x404eee
404ee3:	a1 e4 2d 41 00       	mov    0x412de4,%eax
404ee8:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
404eee:	8b 85 f0 fb ff ff    	mov    -0x410(%ebp),%eax
404ef4:	c7 85 d4 fb ff ff 01 	movl   $0x1,-0x42c(%ebp)
404efb:	00 00 00
404efe:	eb 0a                	jmp    0x404f0a
404f00:	4b                   	dec    %ebx
404f01:	66 83 38 00          	cmpw   $0x0,(%eax)
404f05:	74 07                	je     0x404f0e
404f07:	83 c0 02             	add    $0x2,%eax
404f0a:	85 db                	test   %ebx,%ebx
404f0c:	75 f2                	jne    0x404f00
404f0e:	2b 85 f0 fb ff ff    	sub    -0x410(%ebp),%eax
404f14:	d1 f8                	sar    $1,%eax
404f16:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
404f1c:	83 bd b8 fb ff ff 00 	cmpl   $0x0,-0x448(%ebp)
404f23:	0f 85 a8 01 00 00    	jne    0x4050d1
404f29:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
404f2f:	a8 40                	test   $0x40,%al
404f31:	74 2b                	je     0x404f5e
404f33:	a9 00 01 00 00       	test   $0x100,%eax
404f38:	74 04                	je     0x404f3e
404f3a:	6a 2d                	push   $0x2d
404f3c:	eb 0e                	jmp    0x404f4c
404f3e:	a8 01                	test   $0x1,%al
404f40:	74 04                	je     0x404f46
404f42:	6a 2b                	push   $0x2b
404f44:	eb 06                	jmp    0x404f4c
404f46:	a8 02                	test   $0x2,%al
404f48:	74 14                	je     0x404f5e
404f4a:	6a 20                	push   $0x20
404f4c:	59                   	pop    %ecx
404f4d:	66 89 8d cc fb ff ff 	mov    %cx,-0x434(%ebp)
404f54:	c7 85 d8 fb ff ff 01 	movl   $0x1,-0x428(%ebp)
404f5b:	00 00 00
404f5e:	8b bd d0 fb ff ff    	mov    -0x430(%ebp),%edi
404f64:	2b bd ec fb ff ff    	sub    -0x414(%ebp),%edi
404f6a:	2b bd d8 fb ff ff    	sub    -0x428(%ebp),%edi
404f70:	89 bd e4 fb ff ff    	mov    %edi,-0x41c(%ebp)
404f76:	a8 0c                	test   $0xc,%al
404f78:	75 24                	jne    0x404f9e
404f7a:	eb 1e                	jmp    0x404f9a
404f7c:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
404f82:	6a 20                	push   $0x20
404f84:	8d b5 e8 fb ff ff    	lea    -0x418(%ebp),%esi
404f8a:	4f                   	dec    %edi
404f8b:	e8 f2 f5 ff ff       	call   0x404582
404f90:	83 bd e8 fb ff ff ff 	cmpl   $0xffffffff,-0x418(%ebp)
404f97:	59                   	pop    %ecx
404f98:	74 04                	je     0x404f9e
404f9a:	85 ff                	test   %edi,%edi
404f9c:	7f de                	jg     0x404f7c
404f9e:	ff b5 d8 fb ff ff    	push   -0x428(%ebp)
404fa4:	8b bd 9c fb ff ff    	mov    -0x464(%ebp),%edi
404faa:	8b 9d dc fb ff ff    	mov    -0x424(%ebp),%ebx
404fb0:	8d 85 cc fb ff ff    	lea    -0x434(%ebp),%eax
404fb6:	50                   	push   %eax
404fb7:	8d 85 e8 fb ff ff    	lea    -0x418(%ebp),%eax
404fbd:	e8 53 38 00 00       	call   0x408815
404fc2:	f6 85 f8 fb ff ff 08 	testb  $0x8,-0x408(%ebp)
404fc9:	59                   	pop    %ecx
404fca:	59                   	pop    %ecx
404fcb:	74 2f                	je     0x404ffc
404fcd:	f6 85 f8 fb ff ff 04 	testb  $0x4,-0x408(%ebp)
404fd4:	75 26                	jne    0x404ffc
404fd6:	8b bd e4 fb ff ff    	mov    -0x41c(%ebp),%edi
404fdc:	eb 1a                	jmp    0x404ff8
404fde:	6a 30                	push   $0x30
404fe0:	8d b5 e8 fb ff ff    	lea    -0x418(%ebp),%esi
404fe6:	8b c3                	mov    %ebx,%eax
404fe8:	4f                   	dec    %edi
404fe9:	e8 94 f5 ff ff       	call   0x404582
404fee:	83 bd e8 fb ff ff ff 	cmpl   $0xffffffff,-0x418(%ebp)
404ff5:	59                   	pop    %ecx
404ff6:	74 04                	je     0x404ffc
404ff8:	85 ff                	test   %edi,%edi
404ffa:	7f e2                	jg     0x404fde
404ffc:	83 bd d4 fb ff ff 00 	cmpl   $0x0,-0x42c(%ebp)
405003:	75 6b                	jne    0x405070
405005:	8b 9d ec fb ff ff    	mov    -0x414(%ebp),%ebx
40500b:	85 db                	test   %ebx,%ebx
40500d:	7e 61                	jle    0x405070
40500f:	8b bd f0 fb ff ff    	mov    -0x410(%ebp),%edi
405015:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
40501b:	50                   	push   %eax
40501c:	8b 85 a8 fb ff ff    	mov    -0x458(%ebp),%eax
405022:	ff b0 ac 00 00 00    	push   0xac(%eax)
405028:	8d 85 a4 fb ff ff    	lea    -0x45c(%ebp),%eax
40502e:	57                   	push   %edi
40502f:	50                   	push   %eax
405030:	4b                   	dec    %ebx
405031:	e8 b5 5b 00 00       	call   0x40abeb
405036:	83 c4 10             	add    $0x10,%esp
405039:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
40503f:	85 c0                	test   %eax,%eax
405041:	7e 24                	jle    0x405067
405043:	ff b5 a4 fb ff ff    	push   -0x45c(%ebp)
405049:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
40504f:	8d b5 e8 fb ff ff    	lea    -0x418(%ebp),%esi
405055:	e8 28 f5 ff ff       	call   0x404582
40505a:	03 bd 8c fb ff ff    	add    -0x474(%ebp),%edi
405060:	59                   	pop    %ecx
405061:	85 db                	test   %ebx,%ebx
405063:	7f b0                	jg     0x405015
405065:	eb 2e                	jmp    0x405095
405067:	83 8d e8 fb ff ff ff 	orl    $0xffffffff,-0x418(%ebp)
40506e:	eb 25                	jmp    0x405095
405070:	ff b5 ec fb ff ff    	push   -0x414(%ebp)
405076:	8b bd 9c fb ff ff    	mov    -0x464(%ebp),%edi
40507c:	ff b5 f0 fb ff ff    	push   -0x410(%ebp)
405082:	8b 9d dc fb ff ff    	mov    -0x424(%ebp),%ebx
405088:	8d 85 e8 fb ff ff    	lea    -0x418(%ebp),%eax
40508e:	e8 82 37 00 00       	call   0x408815
405093:	59                   	pop    %ecx
405094:	59                   	pop    %ecx
405095:	83 bd e8 fb ff ff 00 	cmpl   $0x0,-0x418(%ebp)
40509c:	7c 33                	jl     0x4050d1
40509e:	f6 85 f8 fb ff ff 04 	testb  $0x4,-0x408(%ebp)
4050a5:	74 2a                	je     0x4050d1
4050a7:	8b bd e4 fb ff ff    	mov    -0x41c(%ebp),%edi
4050ad:	eb 1e                	jmp    0x4050cd
4050af:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
4050b5:	6a 20                	push   $0x20
4050b7:	8d b5 e8 fb ff ff    	lea    -0x418(%ebp),%esi
4050bd:	4f                   	dec    %edi
4050be:	e8 bf f4 ff ff       	call   0x404582
4050c3:	83 bd e8 fb ff ff ff 	cmpl   $0xffffffff,-0x418(%ebp)
4050ca:	59                   	pop    %ecx
4050cb:	74 04                	je     0x4050d1
4050cd:	85 ff                	test   %edi,%edi
4050cf:	7f de                	jg     0x4050af
4050d1:	83 bd c4 fb ff ff 00 	cmpl   $0x0,-0x43c(%ebp)
4050d8:	74 13                	je     0x4050ed
4050da:	ff b5 c4 fb ff ff    	push   -0x43c(%ebp)
4050e0:	e8 86 ce ff ff       	call   0x401f6b
4050e5:	83 a5 c4 fb ff ff 00 	andl   $0x0,-0x43c(%ebp)
4050ec:	59                   	pop    %ecx
4050ed:	8b b5 c0 fb ff ff    	mov    -0x440(%ebp),%esi
4050f3:	0f b7 06             	movzwl (%esi),%eax
4050f6:	89 85 e4 fb ff ff    	mov    %eax,-0x41c(%ebp)
4050fc:	66 85 c0             	test   %ax,%ax
4050ff:	74 2f                	je     0x405130
405101:	8b 95 a0 fb ff ff    	mov    -0x460(%ebp),%edx
405107:	8b bd e0 fb ff ff    	mov    -0x420(%ebp),%edi
40510d:	8b c8                	mov    %eax,%ecx
40510f:	e9 6b f5 ff ff       	jmp    0x40467f
405114:	e8 0e f0 ff ff       	call   0x404127
405119:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40511f:	e8 63 db ff ff       	call   0x402c87
405124:	80 bd b4 fb ff ff 00 	cmpb   $0x0,-0x44c(%ebp)
40512b:	e9 11 f5 ff ff       	jmp    0x404641
405130:	80 bd b4 fb ff ff 00 	cmpb   $0x0,-0x44c(%ebp)