471f87:	8d 45 f0             	lea    -0x10(%ebp),%eax
471f8a:	e8 e1 df f9 ff       	call   0x40ff70
471f8f:	c3                   	ret
471f90:	e9 d3 1b f9 ff       	jmp    0x403b68
471f95:	eb f0                	jmp    0x471f87
471f97:	5e                   	pop    %esi
471f98:	5b                   	pop    %ebx
471f99:	8b e5                	mov    %ebp,%esp
471f9b:	5d                   	pop    %ebp
471f9c:	c3                   	ret
471f9d:	8d 40 00             	lea    0x0(%eax),%eax
471fa0:	55                   	push   %ebp
471fa1:	8b ec                	mov    %esp,%ebp
471fa3:	33 c9                	xor    %ecx,%ecx
471fa5:	51                   	push   %ecx
471fa6:	51                   	push   %ecx
471fa7:	51                   	push   %ecx
471fa8:	51                   	push   %ecx
471fa9:	53                   	push   %ebx
471faa:	56                   	push   %esi
471fab:	8b f2                	mov    %edx,%esi
471fad:	8b d8                	mov    %eax,%ebx
471faf:	33 c0                	xor    %eax,%eax
471fb1:	55                   	push   %ebp
471fb2:	68 ea 1f 47 00       	push   $0x471fea
471fb7:	64 ff 30             	push   %fs:(%eax)
471fba:	64 89 20             	mov    %esp,%fs:(%eax)
471fbd:	8d 45 f0             	lea    -0x10(%ebp),%eax
471fc0:	8b d6                	mov    %esi,%edx
471fc2:	e8 f1 25 fa ff       	call   0x4145b8
471fc7:	8d 55 f0             	lea    -0x10(%ebp),%edx
471fca:	8b c3                	mov    %ebx,%eax
471fcc:	8b 08                	mov    (%eax),%ecx
471fce:	ff 91 cc 00 00 00    	call   *0xcc(%ecx)
471fd4:	33 c0                	xor    %eax,%eax
471fd6:	5a                   	pop    %edx
471fd7:	59                   	pop    %ecx
471fd8:	59                   	pop    %ecx
471fd9:	64 89 10             	mov    %edx,%fs:(%eax)
471fdc:	68 f1 1f 47 00       	push   $0x471ff1
471fe1:	8d 45 f0             	lea    -0x10(%ebp),%eax
471fe4:	e8 87 df f9 ff       	call   0x40ff70
471fe9:	c3                   	ret
471fea:	e9 79 1b f9 ff       	jmp    0x403b68
471fef:	eb f0                	jmp    0x471fe1
471ff1:	5e                   	pop    %esi
471ff2:	5b                   	pop    %ebx
471ff3:	8b e5                	mov    %ebp,%esp
471ff5:	5d                   	pop    %ebp
471ff6:	c3                   	ret
471ff7:	90                   	nop
471ff8:	b1 01                	mov    $0x1,%cl
471ffa:	e8 91 a7 ff ff       	call   0x46c790
471fff:	c3                   	ret
472000:	53                   	push   %ebx
472001:	56                   	push   %esi
472002:	84 d2                	test   %dl,%dl
472004:	74 08                	je     0x47200e
472006:	83 c4 f0             	add    $0xfffffff0,%esp
472009:	e8 2a 17 f9 ff       	call   0x403738
47200e:	8b da                	mov    %edx,%ebx
472010:	8b f0                	mov    %eax,%esi
472012:	33 d2                	xor    %edx,%edx
472014:	8b c6                	mov    %esi,%eax
472016:	e8 61 96 ff ff       	call   0x46b67c
47201b:	b2 21                	mov    $0x21,%dl
47201d:	8b c6                	mov    %esi,%eax
47201f:	e8 b0 a9 ff ff       	call   0x46c9d4
472024:	8b c6                	mov    %esi,%eax
472026:	84 db                	test   %bl,%bl
472028:	74 0f                	je     0x472039
47202a:	e8 61 17 f9 ff       	call   0x403790
47202f:	64 8f 05 00 00 00 00 	pop    %fs:0x0
472036:	83 c4 0c             	add    $0xc,%esp
472039:	8b c6                	mov    %esi,%eax
47203b:	5e                   	pop    %esi
47203c:	5b                   	pop    %ebx
47203d:	c3                   	ret
47203e:	8b c0                	mov    %eax,%eax
472040:	c3                   	ret
472041:	8d 40 00             	lea    0x0(%eax),%eax
472044:	55                   	push   %ebp
472045:	8b ec                	mov    %esp,%ebp
472047:	6a 00                	push   $0x0
472049:	6a 00                	push   $0x0
47204b:	53                   	push   %ebx
47204c:	56                   	push   %esi
47204d:	8b f2                	mov    %edx,%esi
47204f:	8b d8                	mov    %eax,%ebx
472051:	33 c0                	xor    %eax,%eax
472053:	55                   	push   %ebp
472054:	68 ad 20 47 00       	push   $0x4720ad
472059:	64 ff 30             	push   %fs:(%eax)
47205c:	64 89 20             	mov    %esp,%fs:(%eax)
47205f:	8d 55 fc             	lea    -0x4(%ebp),%edx
472062:	8b c3                	mov    %ebx,%eax
472064:	e8 53 00 00 00       	call   0x4720bc
472069:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
47206d:	75 09                	jne    0x472078
47206f:	8b c6                	mov    %esi,%eax
472071:	e8 ce 51 fa ff       	call   0x417244
472076:	eb 14                	jmp    0x47208c
472078:	8d 55 f8             	lea    -0x8(%ebp),%edx
47207b:	8b c3                	mov    %ebx,%eax
47207d:	e8 3a 00 00 00       	call   0x4720bc
472082:	8b 55 f8             	mov    -0x8(%ebp),%edx
472085:	8b c6                	mov    %esi,%eax
472087:	e8 e0 25 fa ff       	call   0x41466c
47208c:	33 c0                	xor    %eax,%eax
47208e:	5a                   	pop    %edx
47208f:	59                   	pop    %ecx
472090:	59                   	pop    %ecx
472091:	64 89 10             	mov    %edx,%fs:(%eax)
472094:	68 b4 20 47 00       	push   $0x4720b4
472099:	8d 45 f8             	lea    -0x8(%ebp),%eax
47209c:	8b 15 98 11 40 00    	mov    0x401198,%edx
4720a2:	b9 02 00 00 00       	mov    $0x2,%ecx
4720a7:	e8 6c 2b f9 ff       	call   0x404c18
4720ac:	c3                   	ret
4720ad:	e9 b6 1a f9 ff       	jmp    0x403b68
4720b2:	eb e5                	jmp    0x472099
4720b4:	5e                   	pop    %esi
4720b5:	5b                   	pop    %ebx
4720b6:	59                   	pop    %ecx
4720b7:	59                   	pop    %ecx
4720b8:	5d                   	pop    %ebp
4720b9:	c3                   	ret
4720ba:	8b c0                	mov    %eax,%eax
4720bc:	53                   	push   %ebx
4720bd:	56                   	push   %esi
4720be:	8b f2                	mov    %edx,%esi
4720c0:	8b d8                	mov    %eax,%ebx
4720c2:	8b d6                	mov    %esi,%edx
4720c4:	b1 01                	mov    $0x1,%cl
4720c6:	8b c3                	mov    %ebx,%eax
4720c8:	e8 e3 9d ff ff       	call   0x46beb0
4720cd:	84 c0                	test   %al,%al
4720cf:	75 07                	jne    0x4720d8
4720d1:	8b c6                	mov    %esi,%eax
4720d3:	e8 9c 3c f9 ff       	call   0x405d74
4720d8:	5e                   	pop    %esi
4720d9:	5b                   	pop    %ebx
4720da:	c3                   	ret
4720db:	90                   	nop
4720dc:	51                   	push   %ecx
4720dd:	89 14 24             	mov    %edx,(%esp)
4720e0:	8b d4                	mov    %esp,%edx
4720e2:	b1 01                	mov    $0x1,%cl
4720e4:	e8 a7 a6 ff ff       	call   0x46c790
4720e9:	5a                   	pop    %edx
4720ea:	c3                   	ret
4720eb:	90                   	nop
4720ec:	55                   	push   %ebp
4720ed:	8b ec                	mov    %esp,%ebp
4720ef:	6a 00                	push   $0x0
4720f1:	53                   	push   %ebx
4720f2:	56                   	push   %esi
4720f3:	8b f2                	mov    %edx,%esi
4720f5:	8b d8                	mov    %eax,%ebx
4720f7:	33 c0                	xor    %eax,%eax
4720f9:	55                   	push   %ebp
4720fa:	68 2f 21 47 00       	push   $0x47212f
4720ff:	64 ff 30             	push   %fs:(%eax)
472102:	64 89 20             	mov    %esp,%fs:(%eax)
472105:	8d 45 fc             	lea    -0x4(%ebp),%eax
472108:	8b d6                	mov    %esi,%edx
47210a:	e8 dd 20 fa ff       	call   0x4141ec
47210f:	8b 55 fc             	mov    -0x4(%ebp),%edx
472112:	8b c3                	mov    %ebx,%eax
472114:	e8 c3 ff ff ff       	call   0x4720dc
472119:	33 c0                	xor    %eax,%eax
47211b:	5a                   	pop    %edx
47211c:	59                   	pop    %ecx
47211d:	59                   	pop    %ecx
47211e:	64 89 10             	mov    %edx,%fs:(%eax)
472121:	68 36 21 47 00       	push   $0x472136
472126:	8d 45 fc             	lea    -0x4(%ebp),%eax
472129:	e8 46 3c f9 ff       	call   0x405d74
47212e:	c3                   	ret
47212f:	e9 34 1a f9 ff       	jmp    0x403b68
472134:	eb f0                	jmp    0x472126
472136:	5e                   	pop    %esi
472137:	5b                   	pop    %ebx
472138:	59                   	pop    %ecx
472139:	5d                   	pop    %ebp
47213a:	c3                   	ret
47213b:	90                   	nop
47213c:	53                   	push   %ebx
47213d:	56                   	push   %esi
47213e:	84 d2                	test   %dl,%dl
472140:	74 08                	je     0x47214a
472142:	83 c4 f0             	add    $0xfffffff0,%esp
472145:	e8 ee 15 f9 ff       	call   0x403738
47214a:	8b da                	mov    %edx,%ebx
47214c:	8b f0                	mov    %eax,%esi
47214e:	33 d2                	xor    %edx,%edx
472150:	8b c6                	mov    %esi,%eax
472152:	e8 a9 fe ff ff       	call   0x472000
472157:	b2 22                	mov    $0x22,%dl
472159:	8b c6                	mov    %esi,%eax
47215b:	e8 74 a8 ff ff       	call   0x46c9d4
472160:	8b c6                	mov    %esi,%eax
472162:	84 db                	test   %bl,%bl
472164:	74 0f                	je     0x472175
472166:	e8 25 16 f9 ff       	call   0x403790
47216b:	64 8f 05 00 00 00 00 	pop    %fs:0x0
472172:	83 c4 0c             	add    $0xc,%esp
472175:	8b c6                	mov    %esi,%eax
472177:	5e                   	pop    %esi
472178:	5b                   	pop    %ebx
472179:	c3                   	ret
47217a:	8b c0                	mov    %eax,%eax
47217c:	53                   	push   %ebx
47217d:	56                   	push   %esi
47217e:	57                   	push   %edi
47217f:	84 d2                	test   %dl,%dl
472181:	74 08                	je     0x47218b
472183:	83 c4 f0             	add    $0xfffffff0,%esp
472186:	e8 ad 15 f9 ff       	call   0x403738
47218b:	8b f1                	mov    %ecx,%esi
47218d:	8b da                	mov    %edx,%ebx
47218f:	8b f8                	mov    %eax,%edi
472191:	ba 26 00 00 00       	mov    $0x26,%edx
472196:	8b c7                	mov    %edi,%eax
472198:	8b 08                	mov    (%eax),%ecx
47219a:	ff 91 c4 00 00 00    	call   *0xc4(%ecx)
4721a0:	8b ce                	mov    %esi,%ecx
4721a2:	33 d2                	xor    %edx,%edx
4721a4:	8b c7                	mov    %edi,%eax
4721a6:	e8 d5 ac ff ff       	call   0x46ce80
4721ab:	b2 23                	mov    $0x23,%dl
4721ad:	8b c7                	mov    %edi,%eax
4721af:	e8 20 a8 ff ff       	call   0x46c9d4
4721b4:	8b c7                	mov    %edi,%eax
4721b6:	84 db                	test   %bl,%bl
4721b8:	74 0f                	je     0x4721c9
4721ba:	e8 d1 15 f9 ff       	call   0x403790
4721bf:	64 8f 05 00 00 00 00 	pop    %fs:0x0
4721c6:	83 c4 0c             	add    $0xc,%esp
4721c9:	8b c7                	mov    %edi,%eax
4721cb:	5f                   	pop    %edi
4721cc:	5e                   	pop    %esi
4721cd:	5b                   	pop    %ebx
4721ce:	c3                   	ret
4721cf:	90                   	nop
4721d0:	55                   	push   %ebp
4721d1:	8b ec                	mov    %esp,%ebp
4721d3:	6a 00                	push   $0x0
4721d5:	33 c0                	xor    %eax,%eax
4721d7:	55                   	push   %ebp
4721d8:	68 15 22 47 00       	push   $0x472215
4721dd:	64 ff 30             	push   %fs:(%eax)
4721e0:	64 89 20             	mov    %esp,%fs:(%eax)
4721e3:	83 fa 26             	cmp    $0x26,%edx
4721e6:	74 17                	je     0x4721ff
4721e8:	8d 55 fc             	lea    -0x4(%ebp),%edx
4721eb:	a1 1c b1 49 00       	mov    0x49b11c,%eax
4721f0:	e8 43 40 f9 ff       	call   0x406238
4721f5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4721f8:	33 d2                	xor    %edx,%edx
4721fa:	e8 81 78 ff ff       	call   0x469a80
4721ff:	33 c0                	xor    %eax,%eax
472201:	5a                   	pop    %edx
472202:	59                   	pop    %ecx
472203:	59                   	pop    %ecx
472204:	64 89 10             	mov    %edx,%fs:(%eax)
472207:	68 1c 22 47 00       	push   $0x47221c
47220c:	8d 45 fc             	lea    -0x4(%ebp),%eax
47220f:	e8 50 1f f9 ff       	call   0x404164
472214:	c3                   	ret
472215:	e9 4e 19 f9 ff       	jmp    0x403b68
47221a:	eb f0                	jmp    0x47220c
47221c:	59                   	pop    %ecx
47221d:	5d                   	pop    %ebp
47221e:	c3                   	ret
47221f:	90                   	nop
472220:	b8 26 00 00 00       	mov    $0x26,%eax
472225:	c3                   	ret
472226:	8b c0                	mov    %eax,%eax
472228:	53                   	push   %ebx
472229:	56                   	push   %esi
47222a:	8b f0                	mov    %eax,%esi
47222c:	8a 46 3a             	mov    0x3a(%esi),%al
47222f:	3a d0                	cmp    %al,%dl
472231:	74 3a                	je     0x47226d
472233:	8b d8                	mov    %eax,%ebx
472235:	88 56 3a             	mov    %dl,0x3a(%esi)
472238:	33 c9                	xor    %ecx,%ecx
47223a:	b2 06                	mov    $0x6,%dl
47223c:	8b c6                	mov    %esi,%eax
47223e:	e8 a1 00 00 00       	call   0x4722e4
472243:	f6 46 1c 08          	testb  $0x8,0x1c(%esi)
472247:	75 24                	jne    0x47226d
472249:	66 83 7e 42 00       	cmpw   $0x0,0x42(%esi)
47224e:	74 08                	je     0x472258
472250:	8b d6                	mov    %esi,%edx
472252:	8b 46 44             	mov    0x44(%esi),%eax
472255:	ff 56 40             	call   *0x40(%esi)
472258:	84 db                	test   %bl,%bl
47225a:	75 11                	jne    0x47226d
47225c:	66 83 7e 4a 00       	cmpw   $0x0,0x4a(%esi)
472261:	74 0a                	je     0x47226d
472263:	33 c9                	xor    %ecx,%ecx
472265:	8b d6                	mov    %esi,%edx
472267:	8b 46 4c             	mov    0x4c(%esi),%eax
47226a:	ff 56 48             	call   *0x48(%esi)
47226d:	5e                   	pop    %esi
47226e:	5b                   	pop    %ebx
47226f:	c3                   	ret
472270:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
472274:	74 15                	je     0x47228b
472276:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
47227a:	74 0f                	je     0x47228b
47227c:	8b 50 30             	mov    0x30(%eax),%edx
47227f:	8a 92 9d 00 00 00    	mov    0x9d(%edx),%dl
472285:	e8 9e ff ff ff       	call   0x472228
47228a:	c3                   	ret
47228b:	33 d2                	xor    %edx,%edx
47228d:	e8 96 ff ff ff       	call   0x472228
472292:	c3                   	ret
472293:	90                   	nop
472294:	55                   	push   %ebp
472295:	8b ec                	mov    %esp,%ebp
472297:	83 c4 f4             	add    $0xfffffff4,%esp
47229a:	53                   	push   %ebx
47229b:	56                   	push   %esi
47229c:	89 4d f4             	mov    %ecx,-0xc(%ebp)
47229f:	88 55 fb             	mov    %dl,-0x5(%ebp)
4722a2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4722a5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4722a8:	8b 40 34             	mov    0x34(%eax),%eax
4722ab:	8b 58 08             	mov    0x8(%eax),%ebx
4722ae:	4b                   	dec    %ebx
4722af:	83 fb 00             	cmp    $0x0,%ebx
4722b2:	7c 26                	jl     0x4722da
4722b4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4722b7:	8b 40 34             	mov    0x34(%eax),%eax
4722ba:	8b d3                	mov    %ebx,%edx
4722bc:	e8 2f 9b fa ff       	call   0x41bdf0
4722c1:	8a 55 08             	mov    0x8(%ebp),%dl
4722c4:	3a 50 16             	cmp    0x16(%eax),%dl
4722c7:	75 0b                	jne    0x4722d4
4722c9:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4722cc:	8a 55 fb             	mov    -0x5(%ebp),%dl
4722cf:	8b 30                	mov    (%eax),%esi
4722d1:	ff 56 14             	call   *0x14(%esi)
4722d4:	4b                   	dec    %ebx
4722d5:	83 fb ff             	cmp    $0xffffffff,%ebx
4722d8:	75 da                	jne    0x4722b4
4722da:	5e                   	pop    %esi