43b152:	50                   	push   %eax
43b153:	ff 15 4c 7e 4a 00    	call   *0x4a7e4c
43b159:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43b15c:	89 87 1c 01 00 00    	mov    %eax,0x11c(%edi)
43b162:	c7 45 e0 51 24 00 00 	movl   $0x2451,-0x20(%ebp)
43b169:	c7 45 e4 52 24 00 00 	movl   $0x2452,-0x1c(%ebp)
43b170:	e8 fd 2f 03 00       	call   0x46e172
43b175:	8b 74 85 e0          	mov    -0x20(%ebp,%eax,4),%esi
43b179:	ff 15 58 75 4a 00    	call   *0x4a7558
43b17f:	0f b7 c6             	movzwl %si,%eax
43b182:	50                   	push   %eax
43b183:	6a 0c                	push   $0xc
43b185:	50                   	push   %eax
43b186:	ff 15 40 77 4a 00    	call   *0x4a7740
43b18c:	50                   	push   %eax
43b18d:	ff 15 4c 7e 4a 00    	call   *0x4a7e4c
43b193:	89 87 20 01 00 00    	mov    %eax,0x120(%edi)
43b199:	8b c7                	mov    %edi,%eax
43b19b:	e8 01 53 05 00       	call   0x4904a1
43b1a0:	c3                   	ret
43b1a1:	cc                   	int3
43b1a2:	cc                   	int3
43b1a3:	cc                   	int3
43b1a4:	cc                   	int3
43b1a5:	cc                   	int3
43b1a6:	cc                   	int3
43b1a7:	cc                   	int3
43b1a8:	cc                   	int3
43b1a9:	cc                   	int3
43b1aa:	cc                   	int3
43b1ab:	cc                   	int3
43b1ac:	cc                   	int3
43b1ad:	cc                   	int3
43b1ae:	cc                   	int3
43b1af:	cc                   	int3
43b1b0:	8b ff                	mov    %edi,%edi
43b1b2:	55                   	push   %ebp
43b1b3:	8b ec                	mov    %esp,%ebp
43b1b5:	56                   	push   %esi
43b1b6:	8b f1                	mov    %ecx,%esi
43b1b8:	e8 15 00 00 00       	call   0x43b1d2
43b1bd:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
43b1c1:	74 08                	je     0x43b1cb
43b1c3:	56                   	push   %esi
43b1c4:	ff 15 10 74 4a 00    	call   *0x4a7410
43b1ca:	59                   	pop    %ecx
43b1cb:	8b c6                	mov    %esi,%eax
43b1cd:	5e                   	pop    %esi
43b1ce:	5d                   	pop    %ebp
43b1cf:	c2 04 00             	ret    $0x4
43b1d2:	8b ff                	mov    %edi,%edi
43b1d4:	56                   	push   %esi
43b1d5:	8b f1                	mov    %ecx,%esi
43b1d7:	68 00 7f 00 00       	push   $0x7f00
43b1dc:	6a 00                	push   $0x0
43b1de:	c7 06 98 27 40 00    	movl   $0x402798,(%esi)
43b1e4:	ff 15 4c 7e 4a 00    	call   *0x4a7e4c
43b1ea:	50                   	push   %eax
43b1eb:	ff 15 14 7d 4a 00    	call   *0x4a7d14
43b1f1:	ff b6 1c 01 00 00    	push   0x11c(%esi)
43b1f7:	ff 15 74 7d 4a 00    	call   *0x4a7d74
43b1fd:	ff b6 20 01 00 00    	push   0x120(%esi)
43b203:	ff 15 74 7d 4a 00    	call   *0x4a7d74
43b209:	8b ce                	mov    %esi,%ecx
43b20b:	5e                   	pop    %esi
43b20c:	ff 25 dc 77 4a 00    	jmp    *0x4a77dc
43b212:	cc                   	int3
43b213:	cc                   	int3
43b214:	cc                   	int3
43b215:	cc                   	int3
43b216:	cc                   	int3
43b217:	cc                   	int3
43b218:	cc                   	int3
43b219:	cc                   	int3
43b21a:	cc                   	int3
43b21b:	cc                   	int3
43b21c:	cc                   	int3
43b21d:	cc                   	int3
43b21e:	cc                   	int3
43b21f:	cc                   	int3
43b220:	6a 00                	push   $0x0
43b222:	68 00 e3 01 00       	push   $0x1e300
43b227:	68 11 01 00 00       	push   $0x111
43b22c:	ff 71 20             	push   0x20(%ecx)
43b22f:	ff 15 d4 7c 4a 00    	call   *0x4a7cd4
43b235:	c3                   	ret
43b236:	cc                   	int3
43b237:	cc                   	int3
43b238:	cc                   	int3
43b239:	cc                   	int3
43b23a:	cc                   	int3
43b23b:	cc                   	int3
43b23c:	cc                   	int3
43b23d:	cc                   	int3
43b23e:	cc                   	int3
43b23f:	cc                   	int3
43b240:	8b ff                	mov    %edi,%edi
43b242:	55                   	push   %ebp
43b243:	8b ec                	mov    %esp,%ebp
43b245:	53                   	push   %ebx
43b246:	8b 5d 08             	mov    0x8(%ebp),%ebx
43b249:	56                   	push   %esi
43b24a:	57                   	push   %edi
43b24b:	8b f9                	mov    %ecx,%edi
43b24d:	8b 33                	mov    (%ebx),%esi
43b24f:	e8 b4 01 00 00       	call   0x43b408
43b254:	8b 4e 04             	mov    0x4(%esi),%ecx
43b257:	48                   	dec    %eax
43b258:	f7 d8                	neg    %eax
43b25a:	1b c0                	sbb    %eax,%eax
43b25c:	40                   	inc    %eax
43b25d:	50                   	push   %eax
43b25e:	ff 15 2c 81 4a 00    	call   *0x4a812c
43b264:	8b cb                	mov    %ebx,%ecx
43b266:	ff 56 04             	call   *0x4(%esi)
43b269:	8b 33                	mov    (%ebx),%esi
43b26b:	8b cf                	mov    %edi,%ecx
43b26d:	e8 64 01 00 00       	call   0x43b3d6
43b272:	8b 0e                	mov    (%esi),%ecx
43b274:	0f b6 c0             	movzbl %al,%eax
43b277:	50                   	push   %eax
43b278:	ff 15 2c 81 4a 00    	call   *0x4a812c
43b27e:	8b cb                	mov    %ebx,%ecx
43b280:	ff 16                	call   *(%esi)
43b282:	5f                   	pop    %edi
43b283:	5e                   	pop    %esi
43b284:	5b                   	pop    %ebx
43b285:	5d                   	pop    %ebp
43b286:	c2 04 00             	ret    $0x4
43b289:	cc                   	int3
43b28a:	cc                   	int3
43b28b:	cc                   	int3
43b28c:	cc                   	int3
43b28d:	cc                   	int3
43b28e:	cc                   	int3
43b28f:	cc                   	int3
43b290:	8b ff                	mov    %edi,%edi
43b292:	55                   	push   %ebp
43b293:	8b ec                	mov    %esp,%ebp
43b295:	53                   	push   %ebx
43b296:	8b 5d 08             	mov    0x8(%ebp),%ebx
43b299:	56                   	push   %esi
43b29a:	57                   	push   %edi
43b29b:	8b f9                	mov    %ecx,%edi
43b29d:	8b 33                	mov    (%ebx),%esi
43b29f:	e8 64 01 00 00       	call   0x43b408
43b2a4:	8b 4e 04             	mov    0x4(%esi),%ecx
43b2a7:	83 e8 02             	sub    $0x2,%eax
43b2aa:	f7 d8                	neg    %eax
43b2ac:	1b c0                	sbb    %eax,%eax
43b2ae:	40                   	inc    %eax
43b2af:	50                   	push   %eax
43b2b0:	ff 15 2c 81 4a 00    	call   *0x4a812c
43b2b6:	8b cb                	mov    %ebx,%ecx
43b2b8:	ff 56 04             	call   *0x4(%esi)
43b2bb:	8b 33                	mov    (%ebx),%esi
43b2bd:	8b cf                	mov    %edi,%ecx
43b2bf:	e8 12 01 00 00       	call   0x43b3d6
43b2c4:	8b 0e                	mov    (%esi),%ecx
43b2c6:	0f b6 c0             	movzbl %al,%eax
43b2c9:	50                   	push   %eax
43b2ca:	ff 15 2c 81 4a 00    	call   *0x4a812c
43b2d0:	8b cb                	mov    %ebx,%ecx
43b2d2:	ff 16                	call   *(%esi)
43b2d4:	5f                   	pop    %edi
43b2d5:	5e                   	pop    %esi
43b2d6:	5b                   	pop    %ebx
43b2d7:	5d                   	pop    %ebp
43b2d8:	c2 04 00             	ret    $0x4
43b2db:	cc                   	int3
43b2dc:	cc                   	int3
43b2dd:	cc                   	int3
43b2de:	cc                   	int3
43b2df:	cc                   	int3
43b2e0:	e8 23 01 00 00       	call   0x43b408
43b2e5:	83 f8 02             	cmp    $0x2,%eax
43b2e8:	75 06                	jne    0x43b2f0
43b2ea:	ff 25 e0 77 4a 00    	jmp    *0x4a77e0
43b2f0:	c3                   	ret
43b2f1:	cc                   	int3
43b2f2:	cc                   	int3
43b2f3:	cc                   	int3
43b2f4:	cc                   	int3
43b2f5:	cc                   	int3
43b2f6:	cc                   	int3
43b2f7:	cc                   	int3
43b2f8:	cc                   	int3
43b2f9:	cc                   	int3
43b2fa:	cc                   	int3
43b2fb:	cc                   	int3
43b2fc:	cc                   	int3
43b2fd:	cc                   	int3
43b2fe:	cc                   	int3
43b2ff:	cc                   	int3
43b300:	e8 03 01 00 00       	call   0x43b408
43b305:	83 f8 01             	cmp    $0x1,%eax
43b308:	75 06                	jne    0x43b310
43b30a:	ff 25 e0 77 4a 00    	jmp    *0x4a77e0
43b310:	c3                   	ret
43b311:	cc                   	int3
43b312:	cc                   	int3
43b313:	cc                   	int3
43b314:	cc                   	int3
43b315:	cc                   	int3
43b316:	cc                   	int3
43b317:	cc                   	int3
43b318:	cc                   	int3
43b319:	cc                   	int3
43b31a:	cc                   	int3
43b31b:	cc                   	int3
43b31c:	cc                   	int3
43b31d:	cc                   	int3
43b31e:	cc                   	int3
43b31f:	cc                   	int3
43b320:	6a 04                	push   $0x4
43b322:	b8 b3 16 49 00       	mov    $0x4916b3,%eax
43b327:	e8 a7 51 05 00       	call   0x4904d3
43b32c:	68 24 01 00 00       	push   $0x124
43b331:	ff 15 14 74 4a 00    	call   *0x4a7414
43b337:	59                   	pop    %ecx
43b338:	8b c8                	mov    %eax,%ecx
43b33a:	89 4d f0             	mov    %ecx,-0x10(%ebp)
43b33d:	33 c0                	xor    %eax,%eax
43b33f:	89 45 fc             	mov    %eax,-0x4(%ebp)
43b342:	85 c9                	test   %ecx,%ecx
43b344:	74 05                	je     0x43b34b
43b346:	e8 ab fd ff ff       	call   0x43b0f6
43b34b:	e8 51 51 05 00       	call   0x4904a1
43b350:	c3                   	ret
43b351:	cc                   	int3
43b352:	cc                   	int3
43b353:	cc                   	int3
43b354:	cc                   	int3
43b355:	cc                   	int3
43b356:	cc                   	int3
43b357:	cc                   	int3
43b358:	cc                   	int3
43b359:	cc                   	int3
43b35a:	cc                   	int3
43b35b:	cc                   	int3
43b35c:	cc                   	int3
43b35d:	cc                   	int3
43b35e:	cc                   	int3
43b35f:	cc                   	int3
43b360:	a1 e4 77 4a 00       	mov    0x4a77e4,%eax
43b365:	c3                   	ret
43b366:	cc                   	int3
43b367:	cc                   	int3
43b368:	cc                   	int3
43b369:	cc                   	int3
43b36a:	cc                   	int3
43b36b:	cc                   	int3
43b36c:	cc                   	int3
43b36d:	cc                   	int3
43b36e:	cc                   	int3
43b36f:	cc                   	int3
43b370:	b8 7c 27 40 00       	mov    $0x40277c,%eax
43b375:	c3                   	ret
43b376:	cc                   	int3
43b377:	cc                   	int3
43b378:	cc                   	int3
43b379:	cc                   	int3
43b37a:	cc                   	int3
43b37b:	cc                   	int3
43b37c:	cc                   	int3
43b37d:	cc                   	int3
43b37e:	cc                   	int3
43b37f:	cc                   	int3
43b380:	8b ff                	mov    %edi,%edi
43b382:	55                   	push   %ebp
43b383:	8b ec                	mov    %esp,%ebp
43b385:	56                   	push   %esi
43b386:	8b 75 10             	mov    0x10(%ebp),%esi
43b389:	57                   	push   %edi
43b38a:	56                   	push   %esi
43b38b:	ff 75 0c             	push   0xc(%ebp)
43b38e:	8b f9                	mov    %ecx,%edi
43b390:	ff 75 08             	push   0x8(%ebp)
43b393:	ff 15 e8 77 4a 00    	call   *0x4a77e8
43b399:	39 75 0c             	cmp    %esi,0xc(%ebp)
43b39c:	74 32                	je     0x43b3d0
43b39e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
43b3a2:	74 1c                	je     0x43b3c0
43b3a4:	8b 8f 90 00 00 00    	mov    0x90(%edi),%ecx
43b3aa:	85 c9                	test   %ecx,%ecx
43b3ac:	74 12                	je     0x43b3c0
43b3ae:	6a 00                	push   $0x0
43b3b0:	ff 15 58 74 4a 00    	call   *0x4a7458
43b3b6:	ff 15 58 75 4a 00    	call   *0x4a7558
43b3bc:	6a 02                	push   $0x2
43b3be:	eb 08                	jmp    0x43b3c8
43b3c0:	ff 15 58 75 4a 00    	call   *0x4a7558
43b3c6:	6a 01                	push   $0x1
43b3c8:	8b 48 04             	mov    0x4(%eax),%ecx
43b3cb:	e8 0d 66 01 00       	call   0x4519dd
43b3d0:	5f                   	pop    %edi
43b3d1:	5e                   	pop    %esi
43b3d2:	5d                   	pop    %ebp
43b3d3:	c2 0c 00             	ret    $0xc
43b3d6:	83 b9 f0 00 00 00 00 	cmpl   $0x0,0xf0(%ecx)
43b3dd:	75 24                	jne    0x43b403
43b3df:	33 d2                	xor    %edx,%edx
43b3e1:	42                   	inc    %edx
43b3e2:	39 91 f4 00 00 00    	cmp    %edx,0xf4(%ecx)
43b3e8:	74 19                	je     0x43b403
43b3ea:	8b 81 18 01 00 00    	mov    0x118(%ecx),%eax
43b3f0:	8b 00                	mov    (%eax),%eax
43b3f2:	8b 40 60             	mov    0x60(%eax),%eax
43b3f5:	66 39 50 1e          	cmp    %dx,0x1e(%eax)
43b3f9:	77 0a                	ja     0x43b405
43b3fb:	39 91 fc 00 00 00    	cmp    %edx,0xfc(%ecx)
43b401:	77 02                	ja     0x43b405
43b403:	32 d2                	xor    %dl,%dl
43b405:	8a c2                	mov    %dl,%al
43b407:	c3                   	ret
43b408:	83 b9 f0 00 00 00 00 	cmpl   $0x0,0xf0(%ecx)
43b40f:	75 07                	jne    0x43b418
43b411:	8b 81 fc 00 00 00    	mov    0xfc(%ecx),%eax
43b417:	c3                   	ret
43b418:	8b 81 ec 00 00 00    	mov    0xec(%ecx),%eax
43b41e:	c3                   	ret
43b41f:	cc                   	int3
43b420:	6a 00                	push   $0x0
43b422:	68 04 e3 00 00       	push   $0xe304
43b427:	68 11 01 00 00       	push   $0x111
43b42c:	ff 71 20             	push   0x20(%ecx)
43b42f:	ff 15 d4 7c 4a 00    	call   *0x4a7cd4
43b435:	c3                   	ret
43b436:	cc                   	int3
43b437:	cc                   	int3
43b438:	cc                   	int3
43b439:	cc                   	int3
43b43a:	cc                   	int3
43b43b:	cc                   	int3
43b43c:	cc                   	int3
43b43d:	cc                   	int3
43b43e:	cc                   	int3
43b43f:	cc                   	int3
43b440:	8b ff                	mov    %edi,%edi
43b442:	55                   	push   %ebp
43b443:	8b ec                	mov    %esp,%ebp
43b445:	56                   	push   %esi
43b446:	57                   	push   %edi
43b447:	8b 7d 08             	mov    0x8(%ebp),%edi
43b44a:	6a 01                	push   $0x1
43b44c:	8b 07                	mov    (%edi),%eax
43b44e:	8b 70 04             	mov    0x4(%eax),%esi
43b451:	8b ce                	mov    %esi,%ecx
43b453:	ff 15 2c 81 4a 00    	call   *0x4a812c
43b459:	8b cf                	mov    %edi,%ecx