41b17b:	c2 08 00             	ret    $0x8
41b17e:	cc                   	int3
41b17f:	cc                   	int3
41b180:	8b ff                	mov    %edi,%edi
41b182:	55                   	push   %ebp
41b183:	8b ec                	mov    %esp,%ebp
41b185:	53                   	push   %ebx
41b186:	57                   	push   %edi
41b187:	8b 7d 0c             	mov    0xc(%ebp),%edi
41b18a:	8b d9                	mov    %ecx,%ebx
41b18c:	3b 7d 10             	cmp    0x10(%ebp),%edi
41b18f:	74 26                	je     0x41b1b7
41b191:	56                   	push   %esi
41b192:	8b 0b                	mov    (%ebx),%ecx
41b194:	0f b7 07             	movzwl (%edi),%eax
41b197:	50                   	push   %eax
41b198:	ff 75 08             	push   0x8(%ebp)
41b19b:	8b 71 08             	mov    0x8(%ecx),%esi
41b19e:	8b ce                	mov    %esi,%ecx
41b1a0:	ff 15 2c 81 4a 00    	call   *0x4a812c
41b1a6:	8b cb                	mov    %ebx,%ecx
41b1a8:	ff d6                	call   *%esi
41b1aa:	84 c0                	test   %al,%al
41b1ac:	74 08                	je     0x41b1b6
41b1ae:	83 c7 02             	add    $0x2,%edi
41b1b1:	3b 7d 10             	cmp    0x10(%ebp),%edi
41b1b4:	75 dc                	jne    0x41b192
41b1b6:	5e                   	pop    %esi
41b1b7:	8b c7                	mov    %edi,%eax
41b1b9:	5f                   	pop    %edi
41b1ba:	5b                   	pop    %ebx
41b1bb:	5d                   	pop    %ebp
41b1bc:	c2 0c 00             	ret    $0xc
41b1bf:	cc                   	int3
41b1c0:	8b ff                	mov    %edi,%edi
41b1c2:	55                   	push   %ebp
41b1c3:	8b ec                	mov    %esp,%ebp
41b1c5:	51                   	push   %ecx
41b1c6:	8b 45 0c             	mov    0xc(%ebp),%eax
41b1c9:	53                   	push   %ebx
41b1ca:	56                   	push   %esi
41b1cb:	8b 75 08             	mov    0x8(%ebp),%esi
41b1ce:	33 db                	xor    %ebx,%ebx
41b1d0:	2b c6                	sub    %esi,%eax
41b1d2:	40                   	inc    %eax
41b1d3:	d1 e8                	shr    $1,%eax
41b1d5:	39 75 0c             	cmp    %esi,0xc(%ebp)
41b1d8:	57                   	push   %edi
41b1d9:	1b ff                	sbb    %edi,%edi
41b1db:	f7 d7                	not    %edi
41b1dd:	23 f8                	and    %eax,%edi
41b1df:	74 20                	je     0x41b201
41b1e1:	8d 41 08             	lea    0x8(%ecx),%eax
41b1e4:	89 45 fc             	mov    %eax,-0x4(%ebp)
41b1e7:	50                   	push   %eax
41b1e8:	0f b7 06             	movzwl (%esi),%eax
41b1eb:	50                   	push   %eax
41b1ec:	e8 d9 30 07 00       	call   0x48e2ca
41b1f1:	66 89 06             	mov    %ax,(%esi)
41b1f4:	83 c6 02             	add    $0x2,%esi
41b1f7:	8b 45 fc             	mov    -0x4(%ebp),%eax
41b1fa:	43                   	inc    %ebx
41b1fb:	59                   	pop    %ecx
41b1fc:	59                   	pop    %ecx
41b1fd:	3b df                	cmp    %edi,%ebx
41b1ff:	75 e6                	jne    0x41b1e7
41b201:	5f                   	pop    %edi
41b202:	8b c6                	mov    %esi,%eax
41b204:	5e                   	pop    %esi
41b205:	5b                   	pop    %ebx
41b206:	c9                   	leave
41b207:	c2 08 00             	ret    $0x8
41b20a:	cc                   	int3
41b20b:	cc                   	int3
41b20c:	cc                   	int3
41b20d:	cc                   	int3
41b20e:	cc                   	int3
41b20f:	cc                   	int3
41b210:	8b ff                	mov    %edi,%edi
41b212:	55                   	push   %ebp
41b213:	8b ec                	mov    %esp,%ebp
41b215:	8d 41 08             	lea    0x8(%ecx),%eax
41b218:	50                   	push   %eax
41b219:	ff 75 08             	push   0x8(%ebp)
41b21c:	e8 a9 30 07 00       	call   0x48e2ca
41b221:	59                   	pop    %ecx
41b222:	59                   	pop    %ecx
41b223:	5d                   	pop    %ebp
41b224:	c2 04 00             	ret    $0x4
41b227:	cc                   	int3
41b228:	cc                   	int3
41b229:	cc                   	int3
41b22a:	cc                   	int3
41b22b:	cc                   	int3
41b22c:	cc                   	int3
41b22d:	cc                   	int3
41b22e:	cc                   	int3
41b22f:	cc                   	int3
41b230:	8b ff                	mov    %edi,%edi
41b232:	55                   	push   %ebp
41b233:	8b ec                	mov    %esp,%ebp
41b235:	51                   	push   %ecx
41b236:	8b 45 0c             	mov    0xc(%ebp),%eax
41b239:	53                   	push   %ebx
41b23a:	56                   	push   %esi
41b23b:	8b 75 08             	mov    0x8(%ebp),%esi
41b23e:	33 db                	xor    %ebx,%ebx
41b240:	2b c6                	sub    %esi,%eax
41b242:	40                   	inc    %eax
41b243:	d1 e8                	shr    $1,%eax
41b245:	39 75 0c             	cmp    %esi,0xc(%ebp)
41b248:	57                   	push   %edi
41b249:	1b ff                	sbb    %edi,%edi
41b24b:	f7 d7                	not    %edi
41b24d:	23 f8                	and    %eax,%edi
41b24f:	74 20                	je     0x41b271
41b251:	8d 41 08             	lea    0x8(%ecx),%eax
41b254:	89 45 fc             	mov    %eax,-0x4(%ebp)
41b257:	50                   	push   %eax
41b258:	0f b7 06             	movzwl (%esi),%eax
41b25b:	50                   	push   %eax
41b25c:	e8 f4 2f 07 00       	call   0x48e255
41b261:	66 89 06             	mov    %ax,(%esi)
41b264:	83 c6 02             	add    $0x2,%esi
41b267:	8b 45 fc             	mov    -0x4(%ebp),%eax
41b26a:	43                   	inc    %ebx
41b26b:	59                   	pop    %ecx
41b26c:	59                   	pop    %ecx
41b26d:	3b df                	cmp    %edi,%ebx
41b26f:	75 e6                	jne    0x41b257
41b271:	5f                   	pop    %edi
41b272:	8b c6                	mov    %esi,%eax
41b274:	5e                   	pop    %esi
41b275:	5b                   	pop    %ebx
41b276:	c9                   	leave
41b277:	c2 08 00             	ret    $0x8
41b27a:	cc                   	int3
41b27b:	cc                   	int3
41b27c:	cc                   	int3
41b27d:	cc                   	int3
41b27e:	cc                   	int3
41b27f:	cc                   	int3
41b280:	8b ff                	mov    %edi,%edi
41b282:	55                   	push   %ebp
41b283:	8b ec                	mov    %esp,%ebp
41b285:	8d 41 08             	lea    0x8(%ecx),%eax
41b288:	50                   	push   %eax
41b289:	ff 75 08             	push   0x8(%ebp)
41b28c:	e8 c4 2f 07 00       	call   0x48e255
41b291:	59                   	pop    %ecx
41b292:	59                   	pop    %ecx
41b293:	5d                   	pop    %ebp
41b294:	c2 04 00             	ret    $0x4
41b297:	cc                   	int3
41b298:	cc                   	int3
41b299:	cc                   	int3
41b29a:	cc                   	int3
41b29b:	cc                   	int3
41b29c:	cc                   	int3
41b29d:	cc                   	int3
41b29e:	cc                   	int3
41b29f:	cc                   	int3
41b2a0:	8b ff                	mov    %edi,%edi
41b2a2:	55                   	push   %ebp
41b2a3:	8b ec                	mov    %esp,%ebp
41b2a5:	51                   	push   %ecx
41b2a6:	51                   	push   %ecx
41b2a7:	8b 45 0c             	mov    0xc(%ebp),%eax
41b2aa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41b2ae:	53                   	push   %ebx
41b2af:	8b 5d 10             	mov    0x10(%ebp),%ebx
41b2b2:	56                   	push   %esi
41b2b3:	8b 75 08             	mov    0x8(%ebp),%esi
41b2b6:	2b c6                	sub    %esi,%eax
41b2b8:	39 75 0c             	cmp    %esi,0xc(%ebp)
41b2bb:	57                   	push   %edi
41b2bc:	1b ff                	sbb    %edi,%edi
41b2be:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41b2c1:	f7 d7                	not    %edi
41b2c3:	23 f8                	and    %eax,%edi
41b2c5:	74 1e                	je     0x41b2e5
41b2c7:	0f b6 06             	movzbl (%esi),%eax
41b2ca:	50                   	push   %eax
41b2cb:	e8 1e 00 00 00       	call   0x41b2ee
41b2d0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41b2d3:	46                   	inc    %esi
41b2d4:	66 89 03             	mov    %ax,(%ebx)
41b2d7:	8d 5b 02             	lea    0x2(%ebx),%ebx
41b2da:	8b 45 fc             	mov    -0x4(%ebp),%eax
41b2dd:	40                   	inc    %eax
41b2de:	89 45 fc             	mov    %eax,-0x4(%ebp)
41b2e1:	3b c7                	cmp    %edi,%eax
41b2e3:	75 e2                	jne    0x41b2c7
41b2e5:	5f                   	pop    %edi
41b2e6:	8b c6                	mov    %esi,%eax
41b2e8:	5e                   	pop    %esi
41b2e9:	5b                   	pop    %ebx
41b2ea:	c9                   	leave
41b2eb:	c2 0c 00             	ret    $0xc
41b2ee:	8b ff                	mov    %edi,%edi
41b2f0:	55                   	push   %ebp
41b2f1:	8b ec                	mov    %esp,%ebp
41b2f3:	51                   	push   %ecx
41b2f4:	51                   	push   %ecx
41b2f5:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
41b2f9:	8d 41 18             	lea    0x18(%ecx),%eax
41b2fc:	50                   	push   %eax
41b2fd:	8d 45 f8             	lea    -0x8(%ebp),%eax
41b300:	50                   	push   %eax
41b301:	6a 01                	push   $0x1
41b303:	8d 45 08             	lea    0x8(%ebp),%eax
41b306:	50                   	push   %eax
41b307:	8d 45 fc             	lea    -0x4(%ebp),%eax
41b30a:	50                   	push   %eax
41b30b:	e8 fa 2d 07 00       	call   0x48e10a
41b310:	83 c4 14             	add    $0x14,%esp
41b313:	85 c0                	test   %eax,%eax
41b315:	b8 ff ff 00 00       	mov    $0xffff,%eax
41b31a:	78 04                	js     0x41b320
41b31c:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
41b320:	c9                   	leave
41b321:	c2 04 00             	ret    $0x4
41b324:	cc                   	int3
41b325:	cc                   	int3
41b326:	cc                   	int3
41b327:	cc                   	int3
41b328:	cc                   	int3
41b329:	cc                   	int3
41b32a:	cc                   	int3
41b32b:	cc                   	int3
41b32c:	cc                   	int3
41b32d:	cc                   	int3
41b32e:	cc                   	int3
41b32f:	cc                   	int3
41b330:	8b ff                	mov    %edi,%edi
41b332:	55                   	push   %ebp
41b333:	8b ec                	mov    %esp,%ebp
41b335:	5d                   	pop    %ebp
41b336:	e9 b3 ff ff ff       	jmp    0x41b2ee
41b33b:	cc                   	int3
41b33c:	cc                   	int3
41b33d:	cc                   	int3
41b33e:	cc                   	int3
41b33f:	cc                   	int3
41b340:	8b ff                	mov    %edi,%edi
41b342:	55                   	push   %ebp
41b343:	8b ec                	mov    %esp,%ebp
41b345:	51                   	push   %ecx
41b346:	51                   	push   %ecx
41b347:	8b 45 0c             	mov    0xc(%ebp),%eax
41b34a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41b34e:	53                   	push   %ebx
41b34f:	8b 5d 14             	mov    0x14(%ebp),%ebx
41b352:	56                   	push   %esi
41b353:	8b 75 08             	mov    0x8(%ebp),%esi
41b356:	2b c6                	sub    %esi,%eax
41b358:	40                   	inc    %eax
41b359:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41b35c:	d1 e8                	shr    $1,%eax
41b35e:	39 75 0c             	cmp    %esi,0xc(%ebp)
41b361:	57                   	push   %edi
41b362:	1b ff                	sbb    %edi,%edi
41b364:	f7 d7                	not    %edi
41b366:	23 f8                	and    %eax,%edi
41b368:	74 20                	je     0x41b38a
41b36a:	ff 75 10             	push   0x10(%ebp)
41b36d:	0f b7 06             	movzwl (%esi),%eax
41b370:	50                   	push   %eax
41b371:	e8 1d 00 00 00       	call   0x41b393
41b376:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41b379:	83 c6 02             	add    $0x2,%esi
41b37c:	88 03                	mov    %al,(%ebx)
41b37e:	43                   	inc    %ebx
41b37f:	8b 45 fc             	mov    -0x4(%ebp),%eax
41b382:	40                   	inc    %eax
41b383:	89 45 fc             	mov    %eax,-0x4(%ebp)
41b386:	3b c7                	cmp    %edi,%eax
41b388:	75 e0                	jne    0x41b36a
41b38a:	5f                   	pop    %edi
41b38b:	8b c6                	mov    %esi,%eax
41b38d:	5e                   	pop    %esi
41b38e:	5b                   	pop    %ebx
41b38f:	c9                   	leave
41b390:	c2 10 00             	ret    $0x10
41b393:	8b ff                	mov    %edi,%edi
41b395:	55                   	push   %ebp
41b396:	8b ec                	mov    %esp,%ebp
41b398:	83 ec 10             	sub    $0x10,%esp
41b39b:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41b3a0:	33 c5                	xor    %ebp,%eax
41b3a2:	89 45 fc             	mov    %eax,-0x4(%ebp)
41b3a5:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
41b3a9:	8d 41 18             	lea    0x18(%ecx),%eax
41b3ac:	50                   	push   %eax
41b3ad:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b3b0:	50                   	push   %eax
41b3b1:	ff 75 08             	push   0x8(%ebp)
41b3b4:	8d 45 f4             	lea    -0xc(%ebp),%eax
41b3b7:	50                   	push   %eax
41b3b8:	e8 48 2c 07 00       	call   0x48e005
41b3bd:	83 c4 10             	add    $0x10,%esp
41b3c0:	83 f8 01             	cmp    $0x1,%eax
41b3c3:	8a 45 0c             	mov    0xc(%ebp),%al
41b3c6:	75 03                	jne    0x41b3cb
41b3c8:	8a 45 f4             	mov    -0xc(%ebp),%al
41b3cb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41b3ce:	33 cd                	xor    %ebp,%ecx
41b3d0:	e8 2b 4b 07 00       	call   0x48ff00
41b3d5:	c9                   	leave
41b3d6:	c2 08 00             	ret    $0x8
41b3d9:	cc                   	int3
41b3da:	cc                   	int3
41b3db:	cc                   	int3
41b3dc:	cc                   	int3
41b3dd:	cc                   	int3
41b3de:	cc                   	int3
41b3df:	cc                   	int3
41b3e0:	8b ff                	mov    %edi,%edi
41b3e2:	55                   	push   %ebp
41b3e3:	8b ec                	mov    %esp,%ebp
41b3e5:	5d                   	pop    %ebp
41b3e6:	e9 a8 ff ff ff       	jmp    0x41b393
41b3eb:	6a 04                	push   $0x4
41b3ed:	b8 60 13 49 00       	mov    $0x491360,%eax
41b3f2:	e8 dc 50 07 00       	call   0x4904d3
41b3f7:	8b f1                	mov    %ecx,%esi
41b3f9:	89 75 f0             	mov    %esi,-0x10(%ebp)
41b3fc:	33 db                	xor    %ebx,%ebx
41b3fe:	53                   	push   %ebx
41b3ff:	e8 ac 27 07 00       	call   0x48dbb0
41b404:	6a 0f                	push   $0xf
41b406:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41b409:	58                   	pop    %eax
41b40a:	89 46 1c             	mov    %eax,0x1c(%esi)
41b40d:	89 5e 18             	mov    %ebx,0x18(%esi)
41b410:	88 5e 08             	mov    %bl,0x8(%esi)
41b413:	89 46 38             	mov    %eax,0x38(%esi)
41b416:	89 5e 34             	mov    %ebx,0x34(%esi)
41b419:	88 5e 24             	mov    %bl,0x24(%esi)
41b41c:	89 46 54             	mov    %eax,0x54(%esi)
41b41f:	89 5e 50             	mov    %ebx,0x50(%esi)
41b422:	88 5e 40             	mov    %bl,0x40(%esi)
41b425:	89 46 70             	mov    %eax,0x70(%esi)
41b428:	89 5e 6c             	mov    %ebx,0x6c(%esi)
41b42b:	88 5e 5c             	mov    %bl,0x5c(%esi)
41b42e:	68 d4 f9 40 00       	push   $0x40f9d4
41b433:	56                   	push   %esi
41b434:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
41b438:	e8 4a 2a 07 00       	call   0x48de87
41b43d:	59                   	pop    %ecx