43f134:	8b 5d 08             	mov    0x8(%ebp),%ebx
43f137:	56                   	push   %esi
43f138:	8b f1                	mov    %ecx,%esi
43f13a:	85 db                	test   %ebx,%ebx
43f13c:	74 57                	je     0x43f195
43f13e:	8b 4e 14             	mov    0x14(%esi),%ecx
43f141:	83 f9 10             	cmp    $0x10,%ecx
43f144:	72 04                	jb     0x43f14a
43f146:	8b 06                	mov    (%esi),%eax
43f148:	eb 02                	jmp    0x43f14c
43f14a:	8b c6                	mov    %esi,%eax
43f14c:	3b d8                	cmp    %eax,%ebx
43f14e:	72 45                	jb     0x43f195
43f150:	83 f9 10             	cmp    $0x10,%ecx
43f153:	72 04                	jb     0x43f159
43f155:	8b 16                	mov    (%esi),%edx
43f157:	eb 02                	jmp    0x43f15b
43f159:	8b d6                	mov    %esi,%edx
43f15b:	8b 46 10             	mov    0x10(%esi),%eax
43f15e:	03 c2                	add    %edx,%eax
43f160:	3b c3                	cmp    %ebx,%eax
43f162:	76 31                	jbe    0x43f195
43f164:	83 f9 10             	cmp    $0x10,%ecx
43f167:	72 16                	jb     0x43f17f
43f169:	ff 75 0c             	push   0xc(%ebp)
43f16c:	8b 06                	mov    (%esi),%eax
43f16e:	8b ce                	mov    %esi,%ecx
43f170:	2b d8                	sub    %eax,%ebx
43f172:	53                   	push   %ebx
43f173:	56                   	push   %esi
43f174:	e8 d7 00 00 00       	call   0x43f250
43f179:	5e                   	pop    %esi
43f17a:	5b                   	pop    %ebx
43f17b:	5d                   	pop    %ebp
43f17c:	c2 08 00             	ret    $0x8
43f17f:	ff 75 0c             	push   0xc(%ebp)
43f182:	8b c6                	mov    %esi,%eax
43f184:	8b ce                	mov    %esi,%ecx
43f186:	2b d8                	sub    %eax,%ebx
43f188:	53                   	push   %ebx
43f189:	56                   	push   %esi
43f18a:	e8 c1 00 00 00       	call   0x43f250
43f18f:	5e                   	pop    %esi
43f190:	5b                   	pop    %ebx
43f191:	5d                   	pop    %ebp
43f192:	c2 08 00             	ret    $0x8
43f195:	8b 4e 10             	mov    0x10(%esi),%ecx
43f198:	8b c1                	mov    %ecx,%eax
43f19a:	8b 55 0c             	mov    0xc(%ebp),%edx
43f19d:	f7 d0                	not    %eax
43f19f:	3b c2                	cmp    %edx,%eax
43f1a1:	0f 86 95 00 00 00    	jbe    0x43f23c
43f1a7:	57                   	push   %edi
43f1a8:	8d 3c 11             	lea    (%ecx,%edx,1),%edi
43f1ab:	85 d2                	test   %edx,%edx
43f1ad:	0f 84 80 00 00 00    	je     0x43f233
43f1b3:	83 ff fe             	cmp    $0xfffffffe,%edi
43f1b6:	0f 87 85 00 00 00    	ja     0x43f241
43f1bc:	8b 46 14             	mov    0x14(%esi),%eax
43f1bf:	3b c7                	cmp    %edi,%eax
43f1c1:	73 1a                	jae    0x43f1dd
43f1c3:	51                   	push   %ecx
43f1c4:	57                   	push   %edi
43f1c5:	8b ce                	mov    %esi,%ecx
43f1c7:	e8 b4 a0 ff ff       	call   0x439280
43f1cc:	8b 55 0c             	mov    0xc(%ebp),%edx
43f1cf:	85 ff                	test   %edi,%edi
43f1d1:	74 60                	je     0x43f233
43f1d3:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
43f1d7:	72 2a                	jb     0x43f203
43f1d9:	8b 0e                	mov    (%esi),%ecx
43f1db:	eb 28                	jmp    0x43f205
43f1dd:	85 ff                	test   %edi,%edi
43f1df:	75 f2                	jne    0x43f1d3
43f1e1:	89 7e 10             	mov    %edi,0x10(%esi)
43f1e4:	83 f8 10             	cmp    $0x10,%eax
43f1e7:	72 0e                	jb     0x43f1f7
43f1e9:	8b 06                	mov    (%esi),%eax
43f1eb:	5f                   	pop    %edi
43f1ec:	c6 00 00             	movb   $0x0,(%eax)
43f1ef:	8b c6                	mov    %esi,%eax
43f1f1:	5e                   	pop    %esi
43f1f2:	5b                   	pop    %ebx
43f1f3:	5d                   	pop    %ebp
43f1f4:	c2 08 00             	ret    $0x8
43f1f7:	8b c6                	mov    %esi,%eax
43f1f9:	5f                   	pop    %edi
43f1fa:	5e                   	pop    %esi
43f1fb:	5b                   	pop    %ebx
43f1fc:	c6 00 00             	movb   $0x0,(%eax)
43f1ff:	5d                   	pop    %ebp
43f200:	c2 08 00             	ret    $0x8
43f203:	8b ce                	mov    %esi,%ecx
43f205:	8b 46 10             	mov    0x10(%esi),%eax
43f208:	52                   	push   %edx
43f209:	03 c1                	add    %ecx,%eax
43f20b:	53                   	push   %ebx
43f20c:	50                   	push   %eax
43f20d:	e8 ee 3c 1a 00       	call   0x5e2f00
43f212:	83 c4 0c             	add    $0xc,%esp
43f215:	89 7e 10             	mov    %edi,0x10(%esi)
43f218:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
43f21c:	72 0f                	jb     0x43f22d
43f21e:	8b 06                	mov    (%esi),%eax
43f220:	c6 04 38 00          	movb   $0x0,(%eax,%edi,1)
43f224:	8b c6                	mov    %esi,%eax
43f226:	5f                   	pop    %edi
43f227:	5e                   	pop    %esi
43f228:	5b                   	pop    %ebx
43f229:	5d                   	pop    %ebp
43f22a:	c2 08 00             	ret    $0x8
43f22d:	8b c6                	mov    %esi,%eax
43f22f:	c6 04 38 00          	movb   $0x0,(%eax,%edi,1)
43f233:	5f                   	pop    %edi
43f234:	8b c6                	mov    %esi,%eax
43f236:	5e                   	pop    %esi
43f237:	5b                   	pop    %ebx
43f238:	5d                   	pop    %ebp
43f239:	c2 08 00             	ret    $0x8
43f23c:	e8 8f 9d ff ff       	call   0x438fd0
43f241:	e8 8a 9d ff ff       	call   0x438fd0
43f246:	cc                   	int3
43f247:	cc                   	int3
43f248:	cc                   	int3
43f249:	cc                   	int3
43f24a:	cc                   	int3
43f24b:	cc                   	int3
43f24c:	cc                   	int3
43f24d:	cc                   	int3
43f24e:	cc                   	int3
43f24f:	cc                   	int3
43f250:	55                   	push   %ebp
43f251:	8b ec                	mov    %esp,%ebp
43f253:	53                   	push   %ebx
43f254:	8b 5d 08             	mov    0x8(%ebp),%ebx
43f257:	56                   	push   %esi
43f258:	8b f1                	mov    %ecx,%esi
43f25a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43f25d:	57                   	push   %edi
43f25e:	8b 43 10             	mov    0x10(%ebx),%eax
43f261:	3b c1                	cmp    %ecx,%eax
43f263:	0f 82 bd 00 00 00    	jb     0x43f326
43f269:	8b 56 10             	mov    0x10(%esi),%edx
43f26c:	2b c1                	sub    %ecx,%eax
43f26e:	8b 4d 10             	mov    0x10(%ebp),%ecx
43f271:	3b c8                	cmp    %eax,%ecx
43f273:	0f 47 c8             	cmova  %eax,%ecx
43f276:	8b c2                	mov    %edx,%eax
43f278:	f7 d0                	not    %eax
43f27a:	89 4d 10             	mov    %ecx,0x10(%ebp)
43f27d:	3b c1                	cmp    %ecx,%eax
43f27f:	0f 86 a6 00 00 00    	jbe    0x43f32b
43f285:	8d 3c 0a             	lea    (%edx,%ecx,1),%edi
43f288:	85 c9                	test   %ecx,%ecx
43f28a:	0f 84 8d 00 00 00    	je     0x43f31d
43f290:	83 ff fe             	cmp    $0xfffffffe,%edi
43f293:	0f 87 97 00 00 00    	ja     0x43f330
43f299:	8b 46 14             	mov    0x14(%esi),%eax
43f29c:	3b c7                	cmp    %edi,%eax
43f29e:	73 22                	jae    0x43f2c2
43f2a0:	52                   	push   %edx
43f2a1:	57                   	push   %edi
43f2a2:	8b ce                	mov    %esi,%ecx
43f2a4:	e8 d7 9f ff ff       	call   0x439280
43f2a9:	8b 4d 10             	mov    0x10(%ebp),%ecx
43f2ac:	85 ff                	test   %edi,%edi
43f2ae:	74 6d                	je     0x43f31d
43f2b0:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
43f2b4:	72 02                	jb     0x43f2b8
43f2b6:	8b 1b                	mov    (%ebx),%ebx
43f2b8:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
43f2bc:	72 2a                	jb     0x43f2e8
43f2be:	8b 16                	mov    (%esi),%edx
43f2c0:	eb 28                	jmp    0x43f2ea
43f2c2:	85 ff                	test   %edi,%edi
43f2c4:	75 ea                	jne    0x43f2b0
43f2c6:	89 7e 10             	mov    %edi,0x10(%esi)
43f2c9:	83 f8 10             	cmp    $0x10,%eax
43f2cc:	72 0e                	jb     0x43f2dc
43f2ce:	8b 06                	mov    (%esi),%eax
43f2d0:	5f                   	pop    %edi
43f2d1:	c6 00 00             	movb   $0x0,(%eax)
43f2d4:	8b c6                	mov    %esi,%eax
43f2d6:	5e                   	pop    %esi
43f2d7:	5b                   	pop    %ebx
43f2d8:	5d                   	pop    %ebp
43f2d9:	c2 0c 00             	ret    $0xc
43f2dc:	8b c6                	mov    %esi,%eax
43f2de:	5f                   	pop    %edi
43f2df:	5e                   	pop    %esi
43f2e0:	5b                   	pop    %ebx
43f2e1:	c6 00 00             	movb   $0x0,(%eax)
43f2e4:	5d                   	pop    %ebp
43f2e5:	c2 0c 00             	ret    $0xc
43f2e8:	8b d6                	mov    %esi,%edx
43f2ea:	8b 45 0c             	mov    0xc(%ebp),%eax
43f2ed:	03 c3                	add    %ebx,%eax
43f2ef:	51                   	push   %ecx
43f2f0:	50                   	push   %eax
43f2f1:	8b 46 10             	mov    0x10(%esi),%eax
43f2f4:	03 c2                	add    %edx,%eax
43f2f6:	50                   	push   %eax
43f2f7:	e8 04 3c 1a 00       	call   0x5e2f00
43f2fc:	83 c4 0c             	add    $0xc,%esp
43f2ff:	89 7e 10             	mov    %edi,0x10(%esi)
43f302:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
43f306:	72 0f                	jb     0x43f317
43f308:	8b 06                	mov    (%esi),%eax
43f30a:	c6 04 38 00          	movb   $0x0,(%eax,%edi,1)
43f30e:	8b c6                	mov    %esi,%eax
43f310:	5f                   	pop    %edi
43f311:	5e                   	pop    %esi
43f312:	5b                   	pop    %ebx
43f313:	5d                   	pop    %ebp
43f314:	c2 0c 00             	ret    $0xc
43f317:	8b c6                	mov    %esi,%eax
43f319:	c6 04 38 00          	movb   $0x0,(%eax,%edi,1)
43f31d:	5f                   	pop    %edi
43f31e:	8b c6                	mov    %esi,%eax
43f320:	5e                   	pop    %esi
43f321:	5b                   	pop    %ebx
43f322:	5d                   	pop    %ebp
43f323:	c2 0c 00             	ret    $0xc
43f326:	e8 a5 9d ff ff       	call   0x4390d0
43f32b:	e8 a0 9c ff ff       	call   0x438fd0
43f330:	e8 9b 9c ff ff       	call   0x438fd0
43f335:	cc                   	int3
43f336:	cc                   	int3
43f337:	cc                   	int3
43f338:	cc                   	int3
43f339:	cc                   	int3
43f33a:	cc                   	int3
43f33b:	cc                   	int3
43f33c:	cc                   	int3
43f33d:	cc                   	int3
43f33e:	cc                   	int3
43f33f:	cc                   	int3
43f340:	55                   	push   %ebp
43f341:	8b ec                	mov    %esp,%ebp
43f343:	56                   	push   %esi
43f344:	8b 75 08             	mov    0x8(%ebp),%esi
43f347:	57                   	push   %edi
43f348:	8b f9                	mov    %ecx,%edi
43f34a:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
43f34e:	73 15                	jae    0x43f365
43f350:	8b 46 10             	mov    0x10(%esi),%eax
43f353:	83 c0 01             	add    $0x1,%eax
43f356:	74 1b                	je     0x43f373
43f358:	50                   	push   %eax
43f359:	56                   	push   %esi
43f35a:	57                   	push   %edi
43f35b:	e8 20 41 1a 00       	call   0x5e3480
43f360:	83 c4 0c             	add    $0xc,%esp
43f363:	eb 0e                	jmp    0x43f373
43f365:	85 ff                	test   %edi,%edi
43f367:	74 04                	je     0x43f36d
43f369:	8b 06                	mov    (%esi),%eax
43f36b:	89 07                	mov    %eax,(%edi)
43f36d:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
43f373:	8b 46 10             	mov    0x10(%esi),%eax
43f376:	89 47 10             	mov    %eax,0x10(%edi)
43f379:	8b 46 14             	mov    0x14(%esi),%eax
43f37c:	89 47 14             	mov    %eax,0x14(%edi)
43f37f:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
43f386:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
43f38d:	5f                   	pop    %edi
43f38e:	c6 06 00             	movb   $0x0,(%esi)
43f391:	5e                   	pop    %esi
43f392:	5d                   	pop    %ebp
43f393:	c2 04 00             	ret    $0x4
43f396:	cc                   	int3
43f397:	cc                   	int3
43f398:	cc                   	int3
43f399:	cc                   	int3
43f39a:	cc                   	int3
43f39b:	cc                   	int3
43f39c:	cc                   	int3
43f39d:	cc                   	int3
43f39e:	cc                   	int3
43f39f:	cc                   	int3
43f3a0:	55                   	push   %ebp
43f3a1:	8b ec                	mov    %esp,%ebp
43f3a3:	83 e4 f8             	and    $0xfffffff8,%esp
43f3a6:	83 ec 24             	sub    $0x24,%esp
43f3a9:	a1 d4 89 72 00       	mov    0x7289d4,%eax
43f3ae:	33 c4                	xor    %esp,%eax
43f3b0:	89 44 24 20          	mov    %eax,0x20(%esp)
43f3b4:	8b d1                	mov    %ecx,%edx
43f3b6:	56                   	push   %esi
43f3b7:	8b 75 08             	mov    0x8(%ebp),%esi
43f3ba:	89 74 24 08          	mov    %esi,0x8(%esp)
43f3be:	8b 4a 3c             	mov    0x3c(%edx),%ecx
43f3c1:	f6 c1 02             	test   $0x2,%cl
43f3c4:	0f 85 bc 00 00 00    	jne    0x43f486
43f3ca:	8b 42 20             	mov    0x20(%edx),%eax
43f3cd:	8b 00                	mov    (%eax),%eax
43f3cf:	85 c0                	test   %eax,%eax
43f3d1:	0f 84 af 00 00 00    	je     0x43f486
43f3d7:	8b 4a 38             	mov    0x38(%edx),%ecx
43f3da:	3b c8                	cmp    %eax,%ecx
43f3dc:	0f 42 c8             	cmovb  %eax,%ecx
43f3df:	8b 42 10             	mov    0x10(%edx),%eax
43f3e2:	33 d2                	xor    %edx,%edx
43f3e4:	8b 00                	mov    (%eax),%eax
43f3e6:	2b c8                	sub    %eax,%ecx
43f3e8:	d1 f9                	sar    $1,%ecx
43f3ea:	51                   	push   %ecx
43f3eb:	50                   	push   %eax
43f3ec:	8d 4c 24 14          	lea    0x14(%esp),%ecx
43f3f0:	c7 44 24 28 07 00 00 	movl   $0x7,0x28(%esp)
43f3f7:	00
43f3f8:	c7 44 24 24 00 00 00 	movl   $0x0,0x24(%esp)
43f3ff:	00
43f400:	66 89 54 24 14       	mov    %dx,0x14(%esp)
43f405:	e8 e6 93 ff ff       	call   0x4387f0
43f40a:	33 c0                	xor    %eax,%eax
43f40c:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
43f413:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
43f41a:	66 89 06             	mov    %ax,(%esi)
43f41d:	8b 54 24 20          	mov    0x20(%esp),%edx
43f421:	83 fa 08             	cmp    $0x8,%edx
43f424:	73 3c                	jae    0x43f462
43f426:	8b 44 24 1c          	mov    0x1c(%esp),%eax
43f42a:	83 c0 01             	add    $0x1,%eax
43f42d:	74 39                	je     0x43f468
43f42f:	03 c0                	add    %eax,%eax
43f431:	50                   	push   %eax
43f432:	8d 44 24 10          	lea    0x10(%esp),%eax
43f436:	50                   	push   %eax
43f437:	56                   	push   %esi
43f438:	e8 43 40 1a 00       	call   0x5e3480
43f43d:	8b 54 24 2c          	mov    0x2c(%esp),%edx
43f441:	83 c4 0c             	add    $0xc,%esp
43f444:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
43f448:	8b c6                	mov    %esi,%eax
43f44a:	89 4e 10             	mov    %ecx,0x10(%esi)
43f44d:	89 56 14             	mov    %edx,0x14(%esi)
43f450:	5e                   	pop    %esi
43f451:	8b 4c 24 20          	mov    0x20(%esp),%ecx
43f455:	33 cc                	xor    %esp,%ecx
43f457:	e8 7e 20 1a 00       	call   0x5e14da
43f45c:	8b e5                	mov    %ebp,%esp
43f45e:	5d                   	pop    %ebp
43f45f:	c2 04 00             	ret    $0x4
43f462:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
43f466:	89 0e                	mov    %ecx,(%esi)
43f468:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
43f46c:	8b c6                	mov    %esi,%eax
43f46e:	89 4e 10             	mov    %ecx,0x10(%esi)
43f471:	89 56 14             	mov    %edx,0x14(%esi)