43b142:	ff 75 fc             	push   -0x4(%ebp)
43b145:	53                   	push   %ebx
43b146:	e8 da 32 ff ff       	call   0x42e425
43b14b:	5f                   	pop    %edi
43b14c:	5b                   	pop    %ebx
43b14d:	c9                   	leave
43b14e:	c2 0c 00             	ret    $0xc
43b151:	e8 ee bb ff ff       	call   0x436d44
43b156:	cc                   	int3
43b157:	55                   	push   %ebp
43b158:	8b ec                	mov    %esp,%ebp
43b15a:	51                   	push   %ecx
43b15b:	8b 55 08             	mov    0x8(%ebp),%edx
43b15e:	53                   	push   %ebx
43b15f:	57                   	push   %edi
43b160:	8b f9                	mov    %ecx,%edi
43b162:	8b 4f 10             	mov    0x10(%edi),%ecx
43b165:	3b ca                	cmp    %edx,%ecx
43b167:	72 60                	jb     0x43b1c9
43b169:	8b 47 14             	mov    0x14(%edi),%eax
43b16c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
43b16f:	2b c1                	sub    %ecx,%eax
43b171:	3b d8                	cmp    %eax,%ebx
43b173:	77 3a                	ja     0x43b1af
43b175:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
43b179:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
43b17c:	89 47 10             	mov    %eax,0x10(%edi)
43b17f:	8b c7                	mov    %edi,%eax
43b181:	72 02                	jb     0x43b185
43b183:	8b 07                	mov    (%edi),%eax
43b185:	2b ca                	sub    %edx,%ecx
43b187:	56                   	push   %esi
43b188:	8d 34 50             	lea    (%eax,%edx,2),%esi
43b18b:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
43b192:	50                   	push   %eax
43b193:	8d 04 5e             	lea    (%esi,%ebx,2),%eax
43b196:	56                   	push   %esi
43b197:	50                   	push   %eax
43b198:	e8 43 87 00 00       	call   0x4438e0
43b19d:	53                   	push   %ebx
43b19e:	ff 75 10             	push   0x10(%ebp)
43b1a1:	56                   	push   %esi
43b1a2:	e8 5a 8c fe ff       	call   0x423e01
43b1a7:	83 c4 18             	add    $0x18,%esp
43b1aa:	8b c7                	mov    %edi,%eax
43b1ac:	5e                   	pop    %esi
43b1ad:	eb 14                	jmp    0x43b1c3
43b1af:	ff 75 10             	push   0x10(%ebp)
43b1b2:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
43b1b6:	8b cf                	mov    %edi,%ecx
43b1b8:	53                   	push   %ebx
43b1b9:	52                   	push   %edx
43b1ba:	ff 75 fc             	push   -0x4(%ebp)
43b1bd:	53                   	push   %ebx
43b1be:	e8 4c 2f ff ff       	call   0x42e10f
43b1c3:	5f                   	pop    %edi
43b1c4:	5b                   	pop    %ebx
43b1c5:	c9                   	leave
43b1c6:	c2 0c 00             	ret    $0xc
43b1c9:	e8 04 26 fe ff       	call   0x41d7d2
43b1ce:	cc                   	int3
43b1cf:	55                   	push   %ebp
43b1d0:	8b ec                	mov    %esp,%ebp
43b1d2:	56                   	push   %esi
43b1d3:	57                   	push   %edi
43b1d4:	ff 75 0c             	push   0xc(%ebp)
43b1d7:	8b f9                	mov    %ecx,%edi
43b1d9:	ff 75 08             	push   0x8(%ebp)
43b1dc:	8b 07                	mov    (%edi),%eax
43b1de:	8b 70 10             	mov    0x10(%eax),%esi
43b1e1:	8b ce                	mov    %esi,%ecx
43b1e3:	ff 15 54 43 49 00    	call   *0x494354
43b1e9:	8b cf                	mov    %edi,%ecx
43b1eb:	ff d6                	call   *%esi
43b1ed:	5f                   	pop    %edi
43b1ee:	5e                   	pop    %esi
43b1ef:	5d                   	pop    %ebp
43b1f0:	c2 08 00             	ret    $0x8
43b1f3:	55                   	push   %ebp
43b1f4:	8b ec                	mov    %esp,%ebp
43b1f6:	56                   	push   %esi
43b1f7:	57                   	push   %edi
43b1f8:	ff 75 0c             	push   0xc(%ebp)
43b1fb:	8b f9                	mov    %ecx,%edi
43b1fd:	ff 75 08             	push   0x8(%ebp)
43b200:	8b 07                	mov    (%edi),%eax
43b202:	8b 70 10             	mov    0x10(%eax),%esi
43b205:	8b ce                	mov    %esi,%ecx
43b207:	ff 15 54 43 49 00    	call   *0x494354
43b20d:	8b cf                	mov    %edi,%ecx
43b20f:	ff d6                	call   *%esi
43b211:	5f                   	pop    %edi
43b212:	5e                   	pop    %esi
43b213:	5d                   	pop    %ebp
43b214:	c2 08 00             	ret    $0x8
43b217:	55                   	push   %ebp
43b218:	8b ec                	mov    %esp,%ebp
43b21a:	8b 4d 08             	mov    0x8(%ebp),%ecx
43b21d:	33 d2                	xor    %edx,%edx
43b21f:	8b c2                	mov    %edx,%eax
43b221:	eb 04                	jmp    0x43b227
43b223:	40                   	inc    %eax
43b224:	8d 49 02             	lea    0x2(%ecx),%ecx
43b227:	66 39 11             	cmp    %dx,(%ecx)
43b22a:	75 f7                	jne    0x43b223
43b22c:	5d                   	pop    %ebp
43b22d:	c3                   	ret
43b22e:	55                   	push   %ebp
43b22f:	8b ec                	mov    %esp,%ebp
43b231:	8b 4d 08             	mov    0x8(%ebp),%ecx
43b234:	33 d2                	xor    %edx,%edx
43b236:	8b c2                	mov    %edx,%eax
43b238:	eb 04                	jmp    0x43b23e
43b23a:	40                   	inc    %eax
43b23b:	8d 49 02             	lea    0x2(%ecx),%ecx
43b23e:	66 39 11             	cmp    %dx,(%ecx)
43b241:	75 f7                	jne    0x43b23a
43b243:	5d                   	pop    %ebp
43b244:	c3                   	ret
43b245:	55                   	push   %ebp
43b246:	8b ec                	mov    %esp,%ebp
43b248:	8b 45 08             	mov    0x8(%ebp),%eax
43b24b:	8d 50 02             	lea    0x2(%eax),%edx
43b24e:	66 8b 08             	mov    (%eax),%cx
43b251:	83 c0 02             	add    $0x2,%eax
43b254:	66 85 c9             	test   %cx,%cx
43b257:	75 f5                	jne    0x43b24e
43b259:	2b c2                	sub    %edx,%eax
43b25b:	d1 f8                	sar    $1,%eax
43b25d:	5d                   	pop    %ebp
43b25e:	c3                   	ret
43b25f:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
43b264:	c3                   	ret
43b265:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
43b26a:	c3                   	ret
43b26b:	55                   	push   %ebp
43b26c:	8b ec                	mov    %esp,%ebp
43b26e:	8b 45 10             	mov    0x10(%ebp),%eax
43b271:	03 c0                	add    %eax,%eax
43b273:	50                   	push   %eax
43b274:	ff 75 0c             	push   0xc(%ebp)
43b277:	ff 75 08             	push   0x8(%ebp)
43b27a:	e8 61 86 00 00       	call   0x4438e0
43b27f:	83 c4 0c             	add    $0xc,%esp
43b282:	5d                   	pop    %ebp
43b283:	c3                   	ret
43b284:	55                   	push   %ebp
43b285:	8b ec                	mov    %esp,%ebp
43b287:	8b 45 10             	mov    0x10(%ebp),%eax
43b28a:	03 c0                	add    %eax,%eax
43b28c:	50                   	push   %eax
43b28d:	ff 75 0c             	push   0xc(%ebp)
43b290:	ff 75 08             	push   0x8(%ebp)
43b293:	e8 48 86 00 00       	call   0x4438e0
43b298:	83 c4 0c             	add    $0xc,%esp
43b29b:	5d                   	pop    %ebp
43b29c:	c3                   	ret
43b29d:	55                   	push   %ebp
43b29e:	8b ec                	mov    %esp,%ebp
43b2a0:	56                   	push   %esi
43b2a1:	57                   	push   %edi
43b2a2:	ff 75 0c             	push   0xc(%ebp)
43b2a5:	8b f9                	mov    %ecx,%edi
43b2a7:	ff 75 08             	push   0x8(%ebp)
43b2aa:	8b 07                	mov    (%edi),%eax
43b2ac:	8b 70 38             	mov    0x38(%eax),%esi
43b2af:	8b ce                	mov    %esi,%ecx
43b2b1:	ff 15 54 43 49 00    	call   *0x494354
43b2b7:	8b cf                	mov    %edi,%ecx
43b2b9:	ff d6                	call   *%esi
43b2bb:	5f                   	pop    %edi
43b2bc:	5e                   	pop    %esi
43b2bd:	5d                   	pop    %ebp
43b2be:	c2 08 00             	ret    $0x8
43b2c1:	55                   	push   %ebp
43b2c2:	8b ec                	mov    %esp,%ebp
43b2c4:	56                   	push   %esi
43b2c5:	57                   	push   %edi
43b2c6:	ff 75 0c             	push   0xc(%ebp)
43b2c9:	8b f9                	mov    %ecx,%edi
43b2cb:	ff 75 08             	push   0x8(%ebp)
43b2ce:	8b 07                	mov    (%edi),%eax
43b2d0:	8b 70 38             	mov    0x38(%eax),%esi
43b2d3:	8b ce                	mov    %esi,%ecx
43b2d5:	ff 15 54 43 49 00    	call   *0x494354
43b2db:	8b cf                	mov    %edi,%ecx
43b2dd:	ff d6                	call   *%esi
43b2df:	5f                   	pop    %edi
43b2e0:	5e                   	pop    %esi
43b2e1:	5d                   	pop    %ebp
43b2e2:	c2 08 00             	ret    $0x8
43b2e5:	55                   	push   %ebp
43b2e6:	8b ec                	mov    %esp,%ebp
43b2e8:	56                   	push   %esi
43b2e9:	57                   	push   %edi
43b2ea:	ff 75 08             	push   0x8(%ebp)
43b2ed:	8b f9                	mov    %ecx,%edi
43b2ef:	8b 17                	mov    (%edi),%edx
43b2f1:	8b 72 2c             	mov    0x2c(%edx),%esi
43b2f4:	8b ce                	mov    %esi,%ecx
43b2f6:	ff 15 54 43 49 00    	call   *0x494354
43b2fc:	8b cf                	mov    %edi,%ecx
43b2fe:	ff d6                	call   *%esi
43b300:	8b 45 08             	mov    0x8(%ebp),%eax
43b303:	5f                   	pop    %edi
43b304:	5e                   	pop    %esi
43b305:	5d                   	pop    %ebp
43b306:	c2 04 00             	ret    $0x4
43b309:	55                   	push   %ebp
43b30a:	8b ec                	mov    %esp,%ebp
43b30c:	56                   	push   %esi
43b30d:	57                   	push   %edi
43b30e:	ff 75 08             	push   0x8(%ebp)
43b311:	8b f9                	mov    %ecx,%edi
43b313:	8b 17                	mov    (%edi),%edx
43b315:	8b 72 2c             	mov    0x2c(%edx),%esi
43b318:	8b ce                	mov    %esi,%ecx
43b31a:	ff 15 54 43 49 00    	call   *0x494354
43b320:	8b cf                	mov    %edi,%ecx
43b322:	ff d6                	call   *%esi
43b324:	8b 45 08             	mov    0x8(%ebp),%eax
43b327:	5f                   	pop    %edi
43b328:	5e                   	pop    %esi
43b329:	5d                   	pop    %ebp
43b32a:	c2 04 00             	ret    $0x4
43b32d:	55                   	push   %ebp
43b32e:	8b ec                	mov    %esp,%ebp
43b330:	56                   	push   %esi
43b331:	57                   	push   %edi
43b332:	ff 75 08             	push   0x8(%ebp)
43b335:	8b f9                	mov    %ecx,%edi
43b337:	8b 17                	mov    (%edi),%edx
43b339:	8b 72 20             	mov    0x20(%edx),%esi
43b33c:	8b ce                	mov    %esi,%ecx
43b33e:	ff 15 54 43 49 00    	call   *0x494354
43b344:	8b cf                	mov    %edi,%ecx
43b346:	ff d6                	call   *%esi
43b348:	8b 45 08             	mov    0x8(%ebp),%eax
43b34b:	5f                   	pop    %edi
43b34c:	5e                   	pop    %esi
43b34d:	5d                   	pop    %ebp
43b34e:	c2 04 00             	ret    $0x4
43b351:	55                   	push   %ebp
43b352:	8b ec                	mov    %esp,%ebp
43b354:	56                   	push   %esi
43b355:	57                   	push   %edi
43b356:	ff 75 08             	push   0x8(%ebp)
43b359:	8b f9                	mov    %ecx,%edi
43b35b:	8b 17                	mov    (%edi),%edx
43b35d:	8b 72 20             	mov    0x20(%edx),%esi
43b360:	8b ce                	mov    %esi,%ecx
43b362:	ff 15 54 43 49 00    	call   *0x494354
43b368:	8b cf                	mov    %edi,%ecx
43b36a:	ff d6                	call   *%esi
43b36c:	8b 45 08             	mov    0x8(%ebp),%eax
43b36f:	5f                   	pop    %edi
43b370:	5e                   	pop    %esi
43b371:	5d                   	pop    %ebp
43b372:	c2 04 00             	ret    $0x4
43b375:	55                   	push   %ebp
43b376:	8b ec                	mov    %esp,%ebp
43b378:	56                   	push   %esi
43b379:	57                   	push   %edi
43b37a:	ff 75 08             	push   0x8(%ebp)
43b37d:	8b f9                	mov    %ecx,%edi
43b37f:	8b 17                	mov    (%edi),%edx
43b381:	8b 72 28             	mov    0x28(%edx),%esi
43b384:	8b ce                	mov    %esi,%ecx
43b386:	ff 15 54 43 49 00    	call   *0x494354
43b38c:	8b cf                	mov    %edi,%ecx
43b38e:	ff d6                	call   *%esi
43b390:	8b 45 08             	mov    0x8(%ebp),%eax
43b393:	5f                   	pop    %edi
43b394:	5e                   	pop    %esi
43b395:	5d                   	pop    %ebp
43b396:	c2 04 00             	ret    $0x4
43b399:	55                   	push   %ebp
43b39a:	8b ec                	mov    %esp,%ebp
43b39c:	56                   	push   %esi
43b39d:	57                   	push   %edi
43b39e:	ff 75 08             	push   0x8(%ebp)
43b3a1:	8b f9                	mov    %ecx,%edi
43b3a3:	8b 17                	mov    (%edi),%edx
43b3a5:	8b 72 28             	mov    0x28(%edx),%esi
43b3a8:	8b ce                	mov    %esi,%ecx
43b3aa:	ff 15 54 43 49 00    	call   *0x494354
43b3b0:	8b cf                	mov    %edi,%ecx
43b3b2:	ff d6                	call   *%esi
43b3b4:	8b 45 08             	mov    0x8(%ebp),%eax
43b3b7:	5f                   	pop    %edi
43b3b8:	5e                   	pop    %esi
43b3b9:	5d                   	pop    %ebp
43b3ba:	c2 04 00             	ret    $0x4
43b3bd:	55                   	push   %ebp
43b3be:	8b ec                	mov    %esp,%ebp
43b3c0:	56                   	push   %esi
43b3c1:	57                   	push   %edi
43b3c2:	ff 75 08             	push   0x8(%ebp)
43b3c5:	8b f9                	mov    %ecx,%edi
43b3c7:	8b 17                	mov    (%edi),%edx
43b3c9:	8b 72 1c             	mov    0x1c(%edx),%esi
43b3cc:	8b ce                	mov    %esi,%ecx
43b3ce:	ff 15 54 43 49 00    	call   *0x494354
43b3d4:	8b cf                	mov    %edi,%ecx
43b3d6:	ff d6                	call   *%esi
43b3d8:	8b 45 08             	mov    0x8(%ebp),%eax
43b3db:	5f                   	pop    %edi
43b3dc:	5e                   	pop    %esi
43b3dd:	5d                   	pop    %ebp
43b3de:	c2 04 00             	ret    $0x4
43b3e1:	55                   	push   %ebp
43b3e2:	8b ec                	mov    %esp,%ebp
43b3e4:	56                   	push   %esi
43b3e5:	57                   	push   %edi
43b3e6:	ff 75 08             	push   0x8(%ebp)
43b3e9:	8b f9                	mov    %ecx,%edi
43b3eb:	8b 17                	mov    (%edi),%edx
43b3ed:	8b 72 1c             	mov    0x1c(%edx),%esi
43b3f0:	8b ce                	mov    %esi,%ecx
43b3f2:	ff 15 54 43 49 00    	call   *0x494354
43b3f8:	8b cf                	mov    %edi,%ecx
43b3fa:	ff d6                	call   *%esi
43b3fc:	8b 45 08             	mov    0x8(%ebp),%eax
43b3ff:	5f                   	pop    %edi
43b400:	5e                   	pop    %esi
43b401:	5d                   	pop    %ebp
43b402:	c2 04 00             	ret    $0x4
43b405:	55                   	push   %ebp
43b406:	8b ec                	mov    %esp,%ebp
43b408:	51                   	push   %ecx
43b409:	8b 51 10             	mov    0x10(%ecx),%edx
43b40c:	3b 51 14             	cmp    0x14(%ecx),%edx
43b40f:	73 1f                	jae    0x43b430
43b411:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
43b415:	8d 42 01             	lea    0x1(%edx),%eax
43b418:	89 41 10             	mov    %eax,0x10(%ecx)
43b41b:	72 02                	jb     0x43b41f
43b41d:	8b 09                	mov    (%ecx),%ecx
43b41f:	66 8b 45 08          	mov    0x8(%ebp),%ax
43b423:	66 89 04 51          	mov    %ax,(%ecx,%edx,2)
43b427:	33 c0                	xor    %eax,%eax
43b429:	66 89 44 51 02       	mov    %ax,0x2(%ecx,%edx,2)
43b42e:	eb 11                	jmp    0x43b441
43b430:	ff 75 08             	push   0x8(%ebp)
43b433:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
43b437:	ff 75 fc             	push   -0x4(%ebp)
43b43a:	6a 01                	push   $0x1
43b43c:	e8 dd 32 ff ff       	call   0x42e71e
43b441:	c9                   	leave
43b442:	c2 04 00             	ret    $0x4