421f93:	c3                   	ret
421f94:	55                   	push   %ebp
421f95:	8b ec                	mov    %esp,%ebp
421f97:	6a 00                	push   $0x0
421f99:	53                   	push   %ebx
421f9a:	56                   	push   %esi
421f9b:	8b da                	mov    %edx,%ebx
421f9d:	8b f0                	mov    %eax,%esi
421f9f:	33 c0                	xor    %eax,%eax
421fa1:	55                   	push   %ebp
421fa2:	68 d7 1f 42 00       	push   $0x421fd7
421fa7:	64 ff 30             	push   %fs:(%eax)
421faa:	64 89 20             	mov    %esp,%fs:(%eax)
421fad:	8d 45 fc             	lea    -0x4(%ebp),%eax
421fb0:	8b d3                	mov    %ebx,%edx
421fb2:	e8 95 23 fe ff       	call   0x40434c
421fb7:	8b 55 fc             	mov    -0x4(%ebp),%edx
421fba:	8b c6                	mov    %esi,%eax
421fbc:	e8 eb 1f 00 00       	call   0x423fac
421fc1:	33 c0                	xor    %eax,%eax
421fc3:	5a                   	pop    %edx
421fc4:	59                   	pop    %ecx
421fc5:	59                   	pop    %ecx
421fc6:	64 89 10             	mov    %edx,%fs:(%eax)
421fc9:	68 de 1f 42 00       	push   $0x421fde
421fce:	8d 45 fc             	lea    -0x4(%ebp),%eax
421fd1:	e8 8e 21 fe ff       	call   0x404164
421fd6:	c3                   	ret
421fd7:	e9 8c 1b fe ff       	jmp    0x403b68
421fdc:	eb f0                	jmp    0x421fce
421fde:	5e                   	pop    %esi
421fdf:	5b                   	pop    %ebx
421fe0:	59                   	pop    %ecx
421fe1:	5d                   	pop    %ebp
421fe2:	c3                   	ret
421fe3:	90                   	nop
421fe4:	55                   	push   %ebp
421fe5:	8b ec                	mov    %esp,%ebp
421fe7:	83 c4 f8             	add    $0xfffffff8,%esp
421fea:	53                   	push   %ebx
421feb:	56                   	push   %esi
421fec:	57                   	push   %edi
421fed:	8b fa                	mov    %edx,%edi
421fef:	89 45 fc             	mov    %eax,-0x4(%ebp)
421ff2:	8b 45 fc             	mov    -0x4(%ebp),%eax
421ff5:	8b 40 20             	mov    0x20(%eax),%eax
421ff8:	89 45 f8             	mov    %eax,-0x8(%ebp)
421ffb:	8b 45 fc             	mov    -0x4(%ebp),%eax
421ffe:	33 d2                	xor    %edx,%edx
422000:	89 50 20             	mov    %edx,0x20(%eax)
422003:	33 c0                	xor    %eax,%eax
422005:	55                   	push   %ebp
422006:	68 76 20 42 00       	push   $0x422076
42200b:	64 ff 30             	push   %fs:(%eax)
42200e:	64 89 20             	mov    %esp,%fs:(%eax)
422011:	b2 0e                	mov    $0xe,%dl
422013:	8b 45 fc             	mov    -0x4(%ebp),%eax
422016:	e8 99 20 00 00       	call   0x4240b4
42201b:	85 ff                	test   %edi,%edi
42201d:	74 38                	je     0x422057
42201f:	8b c7                	mov    %edi,%eax
422021:	e8 22 ab ff ff       	call   0x41cb48
422026:	8b d8                	mov    %eax,%ebx
422028:	4b                   	dec    %ebx
422029:	85 db                	test   %ebx,%ebx
42202b:	7c 2a                	jl     0x422057
42202d:	43                   	inc    %ebx
42202e:	33 f6                	xor    %esi,%esi
422030:	8b 45 fc             	mov    -0x4(%ebp),%eax
422033:	e8 10 08 00 00       	call   0x422848
422038:	8b d6                	mov    %esi,%edx
42203a:	8b c7                	mov    %edi,%eax
42203c:	e8 0f ab ff ff       	call   0x41cb50
422041:	8b d0                	mov    %eax,%edx
422043:	8b 45 fc             	mov    -0x4(%ebp),%eax
422046:	e8 51 08 00 00       	call   0x42289c
42204b:	8b 45 fc             	mov    -0x4(%ebp),%eax
42204e:	e8 fd 07 00 00       	call   0x422850
422053:	46                   	inc    %esi
422054:	4b                   	dec    %ebx
422055:	75 d9                	jne    0x422030
422057:	8b 45 fc             	mov    -0x4(%ebp),%eax
42205a:	e8 f1 07 00 00       	call   0x422850
42205f:	33 c0                	xor    %eax,%eax
422061:	5a                   	pop    %edx
422062:	59                   	pop    %ecx
422063:	59                   	pop    %ecx
422064:	64 89 10             	mov    %edx,%fs:(%eax)
422067:	68 7d 20 42 00       	push   $0x42207d
42206c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42206f:	8b 55 f8             	mov    -0x8(%ebp),%edx
422072:	89 50 20             	mov    %edx,0x20(%eax)
422075:	c3                   	ret
422076:	e9 ed 1a fe ff       	jmp    0x403b68
42207b:	eb ef                	jmp    0x42206c
42207d:	5f                   	pop    %edi
42207e:	5e                   	pop    %esi
42207f:	5b                   	pop    %ebx
422080:	59                   	pop    %ecx
422081:	59                   	pop    %ecx
422082:	5d                   	pop    %ebp
422083:	c3                   	ret
422084:	55                   	push   %ebp
422085:	8b ec                	mov    %esp,%ebp
422087:	51                   	push   %ecx
422088:	53                   	push   %ebx
422089:	56                   	push   %esi
42208a:	57                   	push   %edi
42208b:	89 45 fc             	mov    %eax,-0x4(%ebp)
42208e:	8b 45 08             	mov    0x8(%ebp),%eax
422091:	8b 40 fc             	mov    -0x4(%eax),%eax
422094:	8b 40 30             	mov    0x30(%eax),%eax
422097:	8b 58 08             	mov    0x8(%eax),%ebx
42209a:	4b                   	dec    %ebx
42209b:	85 db                	test   %ebx,%ebx
42209d:	7c 28                	jl     0x4220c7
42209f:	43                   	inc    %ebx
4220a0:	33 ff                	xor    %edi,%edi
4220a2:	8b 45 08             	mov    0x8(%ebp),%eax
4220a5:	8b 40 fc             	mov    -0x4(%eax),%eax
4220a8:	8b 40 30             	mov    0x30(%eax),%eax
4220ab:	8b d7                	mov    %edi,%edx
4220ad:	e8 3e 9d ff ff       	call   0x41bdf0
4220b2:	8b f0                	mov    %eax,%esi
4220b4:	8b 46 08             	mov    0x8(%esi),%eax
4220b7:	8b 55 fc             	mov    -0x4(%ebp),%edx
4220ba:	e8 ed 63 fe ff       	call   0x4084ac
4220bf:	84 c0                	test   %al,%al
4220c1:	75 06                	jne    0x4220c9
4220c3:	47                   	inc    %edi
4220c4:	4b                   	dec    %ebx
4220c5:	75 db                	jne    0x4220a2
4220c7:	33 f6                	xor    %esi,%esi
4220c9:	8b c6                	mov    %esi,%eax
4220cb:	5f                   	pop    %edi
4220cc:	5e                   	pop    %esi
4220cd:	5b                   	pop    %ebx
4220ce:	59                   	pop    %ecx
4220cf:	5d                   	pop    %ebp
4220d0:	c3                   	ret
4220d1:	8d 40 00             	lea    0x0(%eax),%eax
4220d4:	55                   	push   %ebp
4220d5:	8b ec                	mov    %esp,%ebp
4220d7:	83 c4 ec             	add    $0xffffffec,%esp
4220da:	53                   	push   %ebx
4220db:	56                   	push   %esi
4220dc:	89 55 f8             	mov    %edx,-0x8(%ebp)
4220df:	89 45 fc             	mov    %eax,-0x4(%ebp)
4220e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4220e5:	8b 40 20             	mov    0x20(%eax),%eax
4220e8:	89 45 f4             	mov    %eax,-0xc(%ebp)
4220eb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4220ee:	8b 40 28             	mov    0x28(%eax),%eax
4220f1:	89 45 f0             	mov    %eax,-0x10(%ebp)
4220f4:	33 c0                	xor    %eax,%eax
4220f6:	55                   	push   %ebp
4220f7:	68 1b 22 42 00       	push   $0x42221b
4220fc:	64 ff 30             	push   %fs:(%eax)
4220ff:	64 89 20             	mov    %esp,%fs:(%eax)
422102:	8b 45 f8             	mov    -0x8(%ebp),%eax
422105:	66 83 48 1c 04       	orw    $0x4,0x1c(%eax)
42210a:	8b 45 f8             	mov    -0x8(%ebp),%eax
42210d:	e8 12 28 00 00       	call   0x424924
422112:	8b f0                	mov    %eax,%esi
422114:	4e                   	dec    %esi
422115:	85 f6                	test   %esi,%esi
422117:	7c 26                	jl     0x42213f
422119:	46                   	inc    %esi
42211a:	33 db                	xor    %ebx,%ebx
42211c:	8b d3                	mov    %ebx,%edx
42211e:	8b 45 f8             	mov    -0x8(%ebp),%eax
422121:	e8 d2 27 00 00       	call   0x4248f8
422126:	f6 40 24 04          	testb  $0x4,0x24(%eax)
42212a:	74 0f                	je     0x42213b
42212c:	8b d3                	mov    %ebx,%edx
42212e:	8b 45 f8             	mov    -0x8(%ebp),%eax
422131:	e8 c2 27 00 00       	call   0x4248f8
422136:	66 83 48 1c 04       	orw    $0x4,0x1c(%eax)
42213b:	43                   	inc    %ebx
42213c:	4e                   	dec    %esi
42213d:	75 dd                	jne    0x42211c
42213f:	8b 45 fc             	mov    -0x4(%ebp),%eax
422142:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
422146:	74 13                	je     0x42215b
422148:	55                   	push   %ebp
422149:	8b 45 f8             	mov    -0x8(%ebp),%eax
42214c:	8b 40 08             	mov    0x8(%eax),%eax
42214f:	e8 30 ff ff ff       	call   0x422084
422154:	59                   	pop    %ecx
422155:	8b 55 fc             	mov    -0x4(%ebp),%edx
422158:	89 42 20             	mov    %eax,0x20(%edx)
42215b:	8b 45 fc             	mov    -0x4(%ebp),%eax
42215e:	66 83 78 42 00       	cmpw   $0x0,0x42(%eax)
422163:	74 4e                	je     0x4221b3
422165:	8b 45 fc             	mov    -0x4(%ebp),%eax
422168:	8b 58 20             	mov    0x20(%eax),%ebx
42216b:	85 db                	test   %ebx,%ebx
42216d:	74 11                	je     0x422180
42216f:	8b c3                	mov    %ebx,%eax
422171:	8b 15 b4 a4 41 00    	mov    0x41a4b4,%edx
422177:	e8 fc 13 fe ff       	call   0x403578
42217c:	84 c0                	test   %al,%al
42217e:	74 33                	je     0x4221b3
422180:	8b 45 fc             	mov    -0x4(%ebp),%eax
422183:	8b 40 20             	mov    0x20(%eax),%eax
422186:	89 45 ec             	mov    %eax,-0x14(%ebp)
422189:	8b 45 f8             	mov    -0x8(%ebp),%eax
42218c:	8b 40 08             	mov    0x8(%eax),%eax
42218f:	50                   	push   %eax
422190:	8d 45 ec             	lea    -0x14(%ebp),%eax
422193:	50                   	push   %eax
422194:	8b 45 fc             	mov    -0x4(%ebp),%eax
422197:	83 c0 28             	add    $0x28,%eax
42219a:	50                   	push   %eax
42219b:	8b 5d fc             	mov    -0x4(%ebp),%ebx
42219e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4221a1:	8b 55 fc             	mov    -0x4(%ebp),%edx
4221a4:	8b 43 44             	mov    0x44(%ebx),%eax
4221a7:	ff 53 40             	call   *0x40(%ebx)
4221aa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4221ad:	8b 55 ec             	mov    -0x14(%ebp),%edx
4221b0:	89 50 20             	mov    %edx,0x20(%eax)
4221b3:	8b 55 fc             	mov    -0x4(%ebp),%edx
4221b6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4221b9:	8b 08                	mov    (%eax),%ecx
4221bb:	ff 51 24             	call   *0x24(%ecx)
4221be:	8b 45 f8             	mov    -0x8(%ebp),%eax
4221c1:	66 83 60 1c fb       	andw   $0xfffb,0x1c(%eax)
4221c6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4221c9:	e8 56 27 00 00       	call   0x424924
4221ce:	8b f0                	mov    %eax,%esi
4221d0:	4e                   	dec    %esi
4221d1:	85 f6                	test   %esi,%esi
4221d3:	7c 26                	jl     0x4221fb
4221d5:	46                   	inc    %esi
4221d6:	33 db                	xor    %ebx,%ebx
4221d8:	8b d3                	mov    %ebx,%edx
4221da:	8b 45 f8             	mov    -0x8(%ebp),%eax
4221dd:	e8 16 27 00 00       	call   0x4248f8
4221e2:	f6 40 24 04          	testb  $0x4,0x24(%eax)
4221e6:	74 0f                	je     0x4221f7
4221e8:	8b d3                	mov    %ebx,%edx
4221ea:	8b 45 f8             	mov    -0x8(%ebp),%eax
4221ed:	e8 06 27 00 00       	call   0x4248f8
4221f2:	66 83 60 1c fb       	andw   $0xfffb,0x1c(%eax)
4221f7:	43                   	inc    %ebx
4221f8:	4e                   	dec    %esi
4221f9:	75 dd                	jne    0x4221d8
4221fb:	33 c0                	xor    %eax,%eax
4221fd:	5a                   	pop    %edx
4221fe:	59                   	pop    %ecx
4221ff:	59                   	pop    %ecx
422200:	64 89 10             	mov    %edx,%fs:(%eax)
422203:	68 22 22 42 00       	push   $0x422222
422208:	8b 45 fc             	mov    -0x4(%ebp),%eax
42220b:	8b 55 f4             	mov    -0xc(%ebp),%edx
42220e:	89 50 20             	mov    %edx,0x20(%eax)
422211:	8b 45 fc             	mov    -0x4(%ebp),%eax
422214:	8b 55 f0             	mov    -0x10(%ebp),%edx
422217:	89 50 28             	mov    %edx,0x28(%eax)
42221a:	c3                   	ret
42221b:	e9 48 19 fe ff       	jmp    0x403b68
422220:	eb e6                	jmp    0x422208
422222:	5e                   	pop    %esi
422223:	5b                   	pop    %ebx
422224:	8b e5                	mov    %ebp,%esp
422226:	5d                   	pop    %ebp
422227:	c3                   	ret
422228:	55                   	push   %ebp
422229:	8b ec                	mov    %esp,%ebp
42222b:	81 c4 c8 fe ff ff    	add    $0xfffffec8,%esp
422231:	53                   	push   %ebx
422232:	56                   	push   %esi
422233:	33 c9                	xor    %ecx,%ecx
422235:	89 8d c8 fe ff ff    	mov    %ecx,-0x138(%ebp)
42223b:	89 8d d4 fe ff ff    	mov    %ecx,-0x12c(%ebp)
422241:	89 8d d0 fe ff ff    	mov    %ecx,-0x130(%ebp)
422247:	89 8d cc fe ff ff    	mov    %ecx,-0x134(%ebp)
42224d:	89 55 f8             	mov    %edx,-0x8(%ebp)
422250:	89 45 fc             	mov    %eax,-0x4(%ebp)
422253:	33 c0                	xor    %eax,%eax
422255:	55                   	push   %ebp
422256:	68 04 26 42 00       	push   $0x422604
42225b:	64 ff 30             	push   %fs:(%eax)
42225e:	64 89 20             	mov    %esp,%fs:(%eax)
422261:	8d 95 d8 fe ff ff    	lea    -0x128(%ebp),%edx
422267:	8b 45 f8             	mov    -0x8(%ebp),%eax
42226a:	8b 00                	mov    (%eax),%eax
42226c:	e8 cb 10 fe ff       	call   0x40333c
422271:	33 db                	xor    %ebx,%ebx
422273:	8a 9d d8 fe ff ff    	mov    -0x128(%ebp),%bl
422279:	8b 45 f8             	mov    -0x8(%ebp),%eax
42227c:	8b 40 08             	mov    0x8(%eax),%eax
42227f:	e8 a0 21 fe ff       	call   0x404424
422284:	03 d8                	add    %eax,%ebx
422286:	43                   	inc    %ebx
422287:	83 c3 05             	add    $0x5,%ebx
42228a:	83 c3 03             	add    $0x3,%ebx
42228d:	8b 45 fc             	mov    -0x4(%ebp),%eax
422290:	8b 40 0c             	mov    0xc(%eax),%eax
422293:	8b 55 fc             	mov    -0x4(%ebp),%edx
422296:	2b 42 10             	sub    0x10(%edx),%eax
422299:	3b d8                	cmp    %eax,%ebx
42229b:	7e 08                	jle    0x4222a5
42229d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222a0:	e8 c3 fc ff ff       	call   0x421f68
4222a5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222a8:	e8 7b fb ff ff       	call   0x421e28
4222ad:	89 45 f4             	mov    %eax,-0xc(%ebp)
4222b0:	a0 14 26 42 00       	mov    0x422614,%al
4222b5:	88 45 db             	mov    %al,-0x25(%ebp)
4222b8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4222bb:	f6 40 1d 02          	testb  $0x2,0x1d(%eax)
4222bf:	74 27                	je     0x4222e8
4222c1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222c4:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
4222c8:	74 18                	je     0x4222e2
4222ca:	8b 45 f8             	mov    -0x8(%ebp),%eax
4222cd:	f6 40 1c 20          	testb  $0x20,0x1c(%eax)
4222d1:	74 0f                	je     0x4222e2
4222d3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222d6:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
4222da:	74 06                	je     0x4222e2
4222dc:	80 4d db 01          	orb    $0x1,-0x25(%ebp)
4222e0:	eb 13                	jmp    0x4222f5
4222e2:	80 4d db 04          	orb    $0x4,-0x25(%ebp)
4222e6:	eb 0d                	jmp    0x4222f5
4222e8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222eb:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
4222ef:	74 04                	je     0x4222f5
4222f1:	80 4d db 01          	orb    $0x1,-0x25(%ebp)
4222f5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222f8:	8b 58 30             	mov    0x30(%eax),%ebx
4222fb:	85 db                	test   %ebx,%ebx
4222fd:	74 31                	je     0x422330
4222ff:	8b 45 fc             	mov    -0x4(%ebp),%eax
422302:	8b 40 34             	mov    0x34(%eax),%eax
422305:	3b 43 08             	cmp    0x8(%ebx),%eax
422308:	7d 26                	jge    0x422330
42230a:	8b 45 fc             	mov    -0x4(%ebp),%eax
42230d:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
422311:	74 19                	je     0x42232c
422313:	8b 45 fc             	mov    -0x4(%ebp),%eax
422316:	8b 50 34             	mov    0x34(%eax),%edx
422319:	8b 45 fc             	mov    -0x4(%ebp),%eax
42231c:	8b 40 30             	mov    0x30(%eax),%eax
42231f:	e8 cc 9a ff ff       	call   0x41bdf0
422324:	8b 55 fc             	mov    -0x4(%ebp),%edx
422327:	3b 42 20             	cmp    0x20(%edx),%eax
42232a:	74 04                	je     0x422330