40bf8b:	5d                   	pop    %ebp
40bf8c:	c2 08 00             	ret    $0x8
40bf8f:	8b ff                	mov    %edi,%edi
40bf91:	55                   	push   %ebp
40bf92:	8b ec                	mov    %esp,%ebp
40bf94:	51                   	push   %ecx
40bf95:	a1 0c 30 42 00       	mov    0x42300c,%eax
40bf9a:	33 c5                	xor    %ebp,%eax
40bf9c:	89 45 fc             	mov    %eax,-0x4(%ebp)
40bf9f:	56                   	push   %esi
40bfa0:	68 e4 c9 41 00       	push   $0x41c9e4
40bfa5:	68 dc c9 41 00       	push   $0x41c9dc
40bfaa:	68 e4 c9 41 00       	push   $0x41c9e4
40bfaf:	6a 0b                	push   $0xb
40bfb1:	e8 f3 fc ff ff       	call   0x40bca9
40bfb6:	8b f0                	mov    %eax,%esi
40bfb8:	83 c4 10             	add    $0x10,%esp
40bfbb:	85 f6                	test   %esi,%esi
40bfbd:	74 18                	je     0x40bfd7
40bfbf:	ff 75 14             	push   0x14(%ebp)
40bfc2:	8b ce                	mov    %esi,%ecx
40bfc4:	ff 75 10             	push   0x10(%ebp)
40bfc7:	ff 75 0c             	push   0xc(%ebp)
40bfca:	ff 75 08             	push   0x8(%ebp)
40bfcd:	ff 15 a8 b1 41 00    	call   *0x41b1a8
40bfd3:	ff d6                	call   *%esi
40bfd5:	eb 0a                	jmp    0x40bfe1
40bfd7:	6a 78                	push   $0x78
40bfd9:	ff 15 9c b0 41 00    	call   *0x41b09c
40bfdf:	33 c0                	xor    %eax,%eax
40bfe1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40bfe4:	33 cd                	xor    %ebp,%ecx
40bfe6:	5e                   	pop    %esi
40bfe7:	e8 6a 6f ff ff       	call   0x402f56
40bfec:	8b e5                	mov    %ebp,%esp
40bfee:	5d                   	pop    %ebp
40bfef:	c2 10 00             	ret    $0x10
40bff2:	8b ff                	mov    %edi,%edi
40bff4:	55                   	push   %ebp
40bff5:	8b ec                	mov    %esp,%ebp
40bff7:	51                   	push   %ecx
40bff8:	a1 0c 30 42 00       	mov    0x42300c,%eax
40bffd:	33 c5                	xor    %ebp,%eax
40bfff:	89 45 fc             	mov    %eax,-0x4(%ebp)
40c002:	56                   	push   %esi
40c003:	68 08 ca 41 00       	push   $0x41ca08
40c008:	68 04 ca 41 00       	push   $0x41ca04
40c00d:	68 08 ca 41 00       	push   $0x41ca08
40c012:	6a 0f                	push   $0xf
40c014:	e8 90 fc ff ff       	call   0x40bca9
40c019:	83 c4 10             	add    $0x10,%esp
40c01c:	8b f0                	mov    %eax,%esi
40c01e:	ff 75 08             	push   0x8(%ebp)
40c021:	85 f6                	test   %esi,%esi
40c023:	74 0c                	je     0x40c031
40c025:	8b ce                	mov    %esi,%ecx
40c027:	ff 15 a8 b1 41 00    	call   *0x41b1a8
40c02d:	ff d6                	call   *%esi
40c02f:	eb 06                	jmp    0x40c037
40c031:	ff 15 d4 b0 41 00    	call   *0x41b0d4
40c037:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40c03a:	33 cd                	xor    %ebp,%ecx
40c03c:	5e                   	pop    %esi
40c03d:	e8 14 6f ff ff       	call   0x402f56
40c042:	8b e5                	mov    %ebp,%esp
40c044:	5d                   	pop    %ebp
40c045:	c2 04 00             	ret    $0x4
40c048:	8b ff                	mov    %edi,%edi
40c04a:	55                   	push   %ebp
40c04b:	8b ec                	mov    %esp,%ebp
40c04d:	51                   	push   %ecx
40c04e:	a1 0c 30 42 00       	mov    0x42300c,%eax
40c053:	33 c5                	xor    %ebp,%eax
40c055:	89 45 fc             	mov    %eax,-0x4(%ebp)
40c058:	56                   	push   %esi
40c059:	68 30 ca 41 00       	push   $0x41ca30
40c05e:	68 28 ca 41 00       	push   $0x41ca28
40c063:	68 a8 b4 41 00       	push   $0x41b4a8
40c068:	6a 14                	push   $0x14
40c06a:	e8 3a fc ff ff       	call   0x40bca9
40c06f:	8b f0                	mov    %eax,%esi
40c071:	83 c4 10             	add    $0x10,%esp
40c074:	85 f6                	test   %esi,%esi
40c076:	74 15                	je     0x40c08d
40c078:	ff 75 10             	push   0x10(%ebp)
40c07b:	8b ce                	mov    %esi,%ecx
40c07d:	ff 75 0c             	push   0xc(%ebp)
40c080:	ff 75 08             	push   0x8(%ebp)
40c083:	ff 15 a8 b1 41 00    	call   *0x41b1a8
40c089:	ff d6                	call   *%esi
40c08b:	eb 0c                	jmp    0x40c099
40c08d:	ff 75 0c             	push   0xc(%ebp)
40c090:	ff 75 08             	push   0x8(%ebp)
40c093:	ff 15 f0 b0 41 00    	call   *0x41b0f0
40c099:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40c09c:	33 cd                	xor    %ebp,%ecx
40c09e:	5e                   	pop    %esi
40c09f:	e8 b2 6e ff ff       	call   0x402f56
40c0a4:	8b e5                	mov    %ebp,%esp
40c0a6:	5d                   	pop    %ebp
40c0a7:	c2 0c 00             	ret    $0xc
40c0aa:	8b ff                	mov    %edi,%edi
40c0ac:	55                   	push   %ebp
40c0ad:	8b ec                	mov    %esp,%ebp
40c0af:	51                   	push   %ecx
40c0b0:	a1 0c 30 42 00       	mov    0x42300c,%eax
40c0b5:	33 c5                	xor    %ebp,%eax
40c0b7:	89 45 fc             	mov    %eax,-0x4(%ebp)
40c0ba:	56                   	push   %esi
40c0bb:	68 38 ca 41 00       	push   $0x41ca38
40c0c0:	68 30 ca 41 00       	push   $0x41ca30
40c0c5:	68 38 ca 41 00       	push   $0x41ca38
40c0ca:	6a 16                	push   $0x16
40c0cc:	e8 d8 fb ff ff       	call   0x40bca9
40c0d1:	8b f0                	mov    %eax,%esi
40c0d3:	83 c4 10             	add    $0x10,%esp
40c0d6:	85 f6                	test   %esi,%esi
40c0d8:	74 27                	je     0x40c101
40c0da:	ff 75 28             	push   0x28(%ebp)
40c0dd:	8b ce                	mov    %esi,%ecx
40c0df:	ff 75 24             	push   0x24(%ebp)
40c0e2:	ff 75 20             	push   0x20(%ebp)
40c0e5:	ff 75 1c             	push   0x1c(%ebp)
40c0e8:	ff 75 18             	push   0x18(%ebp)
40c0eb:	ff 75 14             	push   0x14(%ebp)
40c0ee:	ff 75 10             	push   0x10(%ebp)
40c0f1:	ff 75 0c             	push   0xc(%ebp)
40c0f4:	ff 75 08             	push   0x8(%ebp)
40c0f7:	ff 15 a8 b1 41 00    	call   *0x41b1a8
40c0fd:	ff d6                	call   *%esi
40c0ff:	eb 20                	jmp    0x40c121
40c101:	ff 75 1c             	push   0x1c(%ebp)
40c104:	ff 75 18             	push   0x18(%ebp)
40c107:	ff 75 14             	push   0x14(%ebp)
40c10a:	ff 75 10             	push   0x10(%ebp)
40c10d:	ff 75 0c             	push   0xc(%ebp)
40c110:	6a 00                	push   $0x0
40c112:	ff 75 08             	push   0x8(%ebp)
40c115:	e8 18 00 00 00       	call   0x40c132
40c11a:	50                   	push   %eax
40c11b:	ff 15 54 b1 41 00    	call   *0x41b154
40c121:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40c124:	33 cd                	xor    %ebp,%ecx
40c126:	5e                   	pop    %esi
40c127:	e8 2a 6e ff ff       	call   0x402f56
40c12c:	8b e5                	mov    %ebp,%esp
40c12e:	5d                   	pop    %ebp
40c12f:	c2 24 00             	ret    $0x24
40c132:	8b ff                	mov    %edi,%edi
40c134:	55                   	push   %ebp
40c135:	8b ec                	mov    %esp,%ebp
40c137:	51                   	push   %ecx
40c138:	a1 0c 30 42 00       	mov    0x42300c,%eax
40c13d:	33 c5                	xor    %ebp,%eax
40c13f:	89 45 fc             	mov    %eax,-0x4(%ebp)
40c142:	56                   	push   %esi
40c143:	68 50 ca 41 00       	push   $0x41ca50
40c148:	68 48 ca 41 00       	push   $0x41ca48
40c14d:	68 50 ca 41 00       	push   $0x41ca50
40c152:	6a 18                	push   $0x18
40c154:	e8 50 fb ff ff       	call   0x40bca9
40c159:	8b f0                	mov    %eax,%esi
40c15b:	83 c4 10             	add    $0x10,%esp
40c15e:	85 f6                	test   %esi,%esi
40c160:	74 12                	je     0x40c174
40c162:	ff 75 0c             	push   0xc(%ebp)
40c165:	8b ce                	mov    %esi,%ecx
40c167:	ff 75 08             	push   0x8(%ebp)
40c16a:	ff 15 a8 b1 41 00    	call   *0x41b1a8
40c170:	ff d6                	call   *%esi
40c172:	eb 09                	jmp    0x40c17d
40c174:	ff 75 08             	push   0x8(%ebp)
40c177:	e8 6d 76 00 00       	call   0x4137e9
40c17c:	59                   	pop    %ecx
40c17d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40c180:	33 cd                	xor    %ebp,%ecx
40c182:	5e                   	pop    %esi
40c183:	e8 ce 6d ff ff       	call   0x402f56
40c188:	8b e5                	mov    %ebp,%esp
40c18a:	5d                   	pop    %ebp
40c18b:	c2 08 00             	ret    $0x8
40c18e:	a1 0c 30 42 00       	mov    0x42300c,%eax
40c193:	57                   	push   %edi
40c194:	6a 20                	push   $0x20
40c196:	83 e0 1f             	and    $0x1f,%eax
40c199:	bf 18 44 42 00       	mov    $0x424418,%edi
40c19e:	59                   	pop    %ecx
40c19f:	2b c8                	sub    %eax,%ecx
40c1a1:	33 c0                	xor    %eax,%eax
40c1a3:	d3 c8                	ror    %cl,%eax
40c1a5:	33 05 0c 30 42 00    	xor    0x42300c,%eax
40c1ab:	6a 20                	push   $0x20
40c1ad:	59                   	pop    %ecx
40c1ae:	f3 ab                	rep stos %eax,%es:(%edi)
40c1b0:	b0 01                	mov    $0x1,%al
40c1b2:	5f                   	pop    %edi
40c1b3:	c3                   	ret
40c1b4:	8b ff                	mov    %edi,%edi
40c1b6:	55                   	push   %ebp
40c1b7:	8b ec                	mov    %esp,%ebp
40c1b9:	51                   	push   %ecx
40c1ba:	51                   	push   %ecx
40c1bb:	a1 0c 30 42 00       	mov    0x42300c,%eax
40c1c0:	33 c5                	xor    %ebp,%eax
40c1c2:	89 45 fc             	mov    %eax,-0x4(%ebp)
40c1c5:	8b 0d 98 44 42 00    	mov    0x424498,%ecx
40c1cb:	85 c9                	test   %ecx,%ecx
40c1cd:	74 0a                	je     0x40c1d9
40c1cf:	33 c0                	xor    %eax,%eax
40c1d1:	83 f9 01             	cmp    $0x1,%ecx
40c1d4:	0f 94 c0             	sete   %al
40c1d7:	eb 54                	jmp    0x40c22d
40c1d9:	56                   	push   %esi
40c1da:	68 c8 c9 41 00       	push   $0x41c9c8
40c1df:	68 c0 c9 41 00       	push   $0x41c9c0
40c1e4:	68 c8 c9 41 00       	push   $0x41c9c8
40c1e9:	6a 08                	push   $0x8
40c1eb:	e8 b9 fa ff ff       	call   0x40bca9
40c1f0:	8b f0                	mov    %eax,%esi
40c1f2:	83 c4 10             	add    $0x10,%esp
40c1f5:	85 f6                	test   %esi,%esi
40c1f7:	74 27                	je     0x40c220
40c1f9:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
40c1fd:	8d 45 f8             	lea    -0x8(%ebp),%eax
40c200:	6a 00                	push   $0x0
40c202:	50                   	push   %eax
40c203:	8b ce                	mov    %esi,%ecx
40c205:	ff 15 a8 b1 41 00    	call   *0x41b1a8
40c20b:	ff d6                	call   *%esi
40c20d:	83 f8 7a             	cmp    $0x7a,%eax
40c210:	75 0e                	jne    0x40c220
40c212:	33 c9                	xor    %ecx,%ecx
40c214:	ba 98 44 42 00       	mov    $0x424498,%edx
40c219:	41                   	inc    %ecx
40c21a:	87 0a                	xchg   %ecx,(%edx)
40c21c:	b0 01                	mov    $0x1,%al
40c21e:	eb 0c                	jmp    0x40c22c
40c220:	6a 02                	push   $0x2
40c222:	58                   	pop    %eax
40c223:	b9 98 44 42 00       	mov    $0x424498,%ecx
40c228:	87 01                	xchg   %eax,(%ecx)
40c22a:	32 c0                	xor    %al,%al
40c22c:	5e                   	pop    %esi
40c22d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40c230:	33 cd                	xor    %ebp,%ecx
40c232:	e8 1f 6d ff ff       	call   0x402f56
40c237:	8b e5                	mov    %ebp,%esp
40c239:	5d                   	pop    %ebp
40c23a:	c3                   	ret
40c23b:	8b ff                	mov    %edi,%edi
40c23d:	55                   	push   %ebp
40c23e:	8b ec                	mov    %esp,%ebp
40c240:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
40c244:	75 27                	jne    0x40c26d
40c246:	56                   	push   %esi
40c247:	be c8 43 42 00       	mov    $0x4243c8,%esi
40c24c:	83 3e 00             	cmpl   $0x0,(%esi)
40c24f:	74 10                	je     0x40c261
40c251:	83 3e ff             	cmpl   $0xffffffff,(%esi)
40c254:	74 08                	je     0x40c25e
40c256:	ff 36                	push   (%esi)
40c258:	ff 15 04 b1 41 00    	call   *0x41b104
40c25e:	83 26 00             	andl   $0x0,(%esi)
40c261:	83 c6 04             	add    $0x4,%esi
40c264:	81 fe 18 44 42 00    	cmp    $0x424418,%esi
40c26a:	75 e0                	jne    0x40c24c
40c26c:	5e                   	pop    %esi
40c26d:	b0 01                	mov    $0x1,%al
40c26f:	5d                   	pop    %ebp
40c270:	c3                   	ret
40c271:	8b ff                	mov    %edi,%edi
40c273:	55                   	push   %ebp
40c274:	8b ec                	mov    %esp,%ebp
40c276:	51                   	push   %ecx
40c277:	51                   	push   %ecx
40c278:	53                   	push   %ebx
40c279:	57                   	push   %edi
40c27a:	6a 30                	push   $0x30
40c27c:	6a 40                	push   $0x40
40c27e:	e8 29 d6 ff ff       	call   0x4098ac
40c283:	8b f8                	mov    %eax,%edi
40c285:	33 db                	xor    %ebx,%ebx
40c287:	89 7d f8             	mov    %edi,-0x8(%ebp)
40c28a:	59                   	pop    %ecx
40c28b:	59                   	pop    %ecx
40c28c:	85 ff                	test   %edi,%edi
40c28e:	75 04                	jne    0x40c294
40c290:	8b fb                	mov    %ebx,%edi
40c292:	eb 48                	jmp    0x40c2dc
40c294:	8d 87 00 0c 00 00    	lea    0xc00(%edi),%eax
40c29a:	3b f8                	cmp    %eax,%edi
40c29c:	74 3e                	je     0x40c2dc
40c29e:	56                   	push   %esi
40c29f:	8d 77 20             	lea    0x20(%edi),%esi
40c2a2:	8b f8                	mov    %eax,%edi
40c2a4:	53                   	push   %ebx
40c2a5:	68 a0 0f 00 00       	push   $0xfa0
40c2aa:	8d 46 e0             	lea    -0x20(%esi),%eax
40c2ad:	50                   	push   %eax
40c2ae:	e8 95 fd ff ff       	call   0x40c048
40c2b3:	83 4e f8 ff          	orl    $0xffffffff,-0x8(%esi)
40c2b7:	89 1e                	mov    %ebx,(%esi)
40c2b9:	8d 76 30             	lea    0x30(%esi),%esi
40c2bc:	89 5e d4             	mov    %ebx,-0x2c(%esi)
40c2bf:	8d 46 e0             	lea    -0x20(%esi),%eax
40c2c2:	c7 46 d8 00 00 0a 0a 	movl   $0xa0a0000,-0x28(%esi)
40c2c9:	c6 46 dc 0a          	movb   $0xa,-0x24(%esi)
40c2cd:	80 66 dd f8          	andb   $0xf8,-0x23(%esi)
40c2d1:	88 5e de             	mov    %bl,-0x22(%esi)
40c2d4:	3b c7                	cmp    %edi,%eax
40c2d6:	75 cc                	jne    0x40c2a4
40c2d8:	8b 7d f8             	mov    -0x8(%ebp),%edi
40c2db:	5e                   	pop    %esi
40c2dc:	53                   	push   %ebx
40c2dd:	e8 42 d5 ff ff       	call   0x409824
40c2e2:	59                   	pop    %ecx
40c2e3:	8b c7                	mov    %edi,%eax
40c2e5:	5f                   	pop    %edi
40c2e6:	5b                   	pop    %ebx
40c2e7:	8b e5                	mov    %ebp,%esp
40c2e9:	5d                   	pop    %ebp
40c2ea:	c3                   	ret
40c2eb:	8b ff                	mov    %edi,%edi
40c2ed:	55                   	push   %ebp
40c2ee:	8b ec                	mov    %esp,%ebp
40c2f0:	56                   	push   %esi
40c2f1:	8b 75 08             	mov    0x8(%ebp),%esi
40c2f4:	85 f6                	test   %esi,%esi
40c2f6:	74 25                	je     0x40c31d
40c2f8:	53                   	push   %ebx
40c2f9:	8d 9e 00 0c 00 00    	lea    0xc00(%esi),%ebx
40c2ff:	57                   	push   %edi
40c300:	8b fe                	mov    %esi,%edi
40c302:	3b f3                	cmp    %ebx,%esi
40c304:	74 0e                	je     0x40c314
40c306:	57                   	push   %edi
40c307:	ff 15 40 b0 41 00    	call   *0x41b040
40c30d:	83 c7 30             	add    $0x30,%edi
40c310:	3b fb                	cmp    %ebx,%edi
40c312:	75 f2                	jne    0x40c306
40c314:	56                   	push   %esi
40c315:	e8 0a d5 ff ff       	call   0x409824
40c31a:	59                   	pop    %ecx
40c31b:	5f                   	pop    %edi
40c31c:	5b                   	pop    %ebx
40c31d:	5e                   	pop    %esi
40c31e:	5d                   	pop    %ebp
40c31f:	c3                   	ret
40c320:	6a 14                	push   $0x14
40c322:	68 60 1d 42 00       	push   $0x421d60