440092:	50                   	push   %eax
440093:	ff 75 14             	push   0x14(%ebp)
440096:	8d 45 a8             	lea    -0x58(%ebp),%eax
440099:	ff 75 10             	push   0x10(%ebp)
44009c:	50                   	push   %eax
44009d:	53                   	push   %ebx
44009e:	e8 5d f7 ff ff       	call   0x43f800
4400a3:	83 c4 18             	add    $0x18,%esp
4400a6:	8b 10                	mov    (%eax),%edx
4400a8:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
4400ac:	8b 4d b8             	mov    -0x48(%ebp),%ecx
4400af:	89 55 10             	mov    %edx,0x10(%ebp)
4400b2:	8b 40 04             	mov    0x4(%eax),%eax
4400b5:	89 45 bc             	mov    %eax,-0x44(%ebp)
4400b8:	89 45 14             	mov    %eax,0x14(%ebp)
4400bb:	8d 45 d8             	lea    -0x28(%ebp),%eax
4400be:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
4400c2:	2b f1                	sub    %ecx,%esi
4400c4:	56                   	push   %esi
4400c5:	8d 04 48             	lea    (%eax,%ecx,2),%eax
4400c8:	50                   	push   %eax
4400c9:	ff 75 bc             	push   -0x44(%ebp)
4400cc:	8d 45 a8             	lea    -0x58(%ebp),%eax
4400cf:	52                   	push   %edx
4400d0:	50                   	push   %eax
4400d1:	53                   	push   %ebx
4400d2:	e8 29 f7 ff ff       	call   0x43f800
4400d7:	8b 55 b0             	mov    -0x50(%ebp),%edx
4400da:	8b 75 98             	mov    -0x68(%ebp),%esi
4400dd:	57                   	push   %edi
4400de:	8b 08                	mov    (%eax),%ecx
4400e0:	ff 75 1c             	push   0x1c(%ebp)
4400e3:	89 4d 10             	mov    %ecx,0x10(%ebp)
4400e6:	8b 40 04             	mov    0x4(%eax),%eax
4400e9:	50                   	push   %eax
4400ea:	51                   	push   %ecx
4400eb:	56                   	push   %esi
4400ec:	53                   	push   %ebx
4400ed:	89 45 14             	mov    %eax,0x14(%ebp)
4400f0:	c7 42 20 00 00 00 00 	movl   $0x0,0x20(%edx)
4400f7:	c7 42 24 00 00 00 00 	movl   $0x0,0x24(%edx)
4400fe:	e8 8d f6 ff ff       	call   0x43f790
440103:	8b 45 d4             	mov    -0x2c(%ebp),%eax
440106:	83 c4 30             	add    $0x30,%esp
440109:	83 f8 10             	cmp    $0x10,%eax
44010c:	72 36                	jb     0x440144
44010e:	8b 55 c0             	mov    -0x40(%ebp),%edx
440111:	40                   	inc    %eax
440112:	8b ca                	mov    %edx,%ecx
440114:	3d 00 10 00 00       	cmp    $0x1000,%eax
440119:	72 20                	jb     0x44013b
44011b:	f6 c1 1f             	test   $0x1f,%cl
44011e:	0f 85 8f 00 00 00    	jne    0x4401b3
440124:	8b 52 fc             	mov    -0x4(%edx),%edx
440127:	3b d1                	cmp    %ecx,%edx
440129:	0f 83 84 00 00 00    	jae    0x4401b3
44012f:	2b ca                	sub    %edx,%ecx
440131:	83 f9 04             	cmp    $0x4,%ecx
440134:	72 7d                	jb     0x4401b3
440136:	83 f9 23             	cmp    $0x23,%ecx
440139:	77 78                	ja     0x4401b3
44013b:	52                   	push   %edx
44013c:	e8 8f 03 0b 00       	call   0x4f04d0
440141:	83 c4 04             	add    $0x4,%esp
440144:	8b 45 ec             	mov    -0x14(%ebp),%eax
440147:	c7 45 d4 0f 00 00 00 	movl   $0xf,-0x2c(%ebp)
44014e:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
440155:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
440159:	83 f8 08             	cmp    $0x8,%eax
44015c:	72 37                	jb     0x440195
44015e:	8b 55 d8             	mov    -0x28(%ebp),%edx
440161:	40                   	inc    %eax
440162:	8b ca                	mov    %edx,%ecx
440164:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
440169:	77 48                	ja     0x4401b3
44016b:	03 c0                	add    %eax,%eax
44016d:	3d 00 10 00 00       	cmp    $0x1000,%eax
440172:	72 18                	jb     0x44018c
440174:	f6 c1 1f             	test   $0x1f,%cl
440177:	75 3a                	jne    0x4401b3
440179:	8b 52 fc             	mov    -0x4(%edx),%edx
44017c:	3b d1                	cmp    %ecx,%edx
44017e:	73 33                	jae    0x4401b3
440180:	2b ca                	sub    %edx,%ecx
440182:	83 f9 04             	cmp    $0x4,%ecx
440185:	72 2c                	jb     0x4401b3
440187:	83 f9 23             	cmp    $0x23,%ecx
44018a:	77 27                	ja     0x4401b3
44018c:	52                   	push   %edx
44018d:	e8 3e 03 0b 00       	call   0x4f04d0
440192:	83 c4 04             	add    $0x4,%esp
440195:	8b c6                	mov    %esi,%eax
440197:	8b 4d f4             	mov    -0xc(%ebp),%ecx
44019a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4401a1:	59                   	pop    %ecx
4401a2:	5f                   	pop    %edi
4401a3:	5e                   	pop    %esi
4401a4:	5b                   	pop    %ebx
4401a5:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4401a8:	33 cd                	xor    %ebp,%ecx
4401aa:	e8 2b 13 1a 00       	call   0x5e14da
4401af:	8b e5                	mov    %ebp,%esp
4401b1:	5d                   	pop    %ebp
4401b2:	c3                   	ret
4401b3:	e8 77 cd 1a 00       	call   0x5ecf2f
4401b8:	e8 13 8e ff ff       	call   0x438fd0
4401bd:	e8 0e 8f ff ff       	call   0x4390d0
4401c2:	cc                   	int3
4401c3:	cc                   	int3
4401c4:	cc                   	int3
4401c5:	cc                   	int3
4401c6:	cc                   	int3
4401c7:	cc                   	int3
4401c8:	cc                   	int3
4401c9:	cc                   	int3
4401ca:	cc                   	int3
4401cb:	cc                   	int3
4401cc:	cc                   	int3
4401cd:	cc                   	int3
4401ce:	cc                   	int3
4401cf:	cc                   	int3
4401d0:	55                   	push   %ebp
4401d1:	8b ec                	mov    %esp,%ebp
4401d3:	8b 55 14             	mov    0x14(%ebp),%edx
4401d6:	56                   	push   %esi
4401d7:	8b 75 0c             	mov    0xc(%ebp),%esi
4401da:	c6 06 25             	movb   $0x25,(%esi)
4401dd:	8d 46 01             	lea    0x1(%esi),%eax
4401e0:	f6 c2 20             	test   $0x20,%dl
4401e3:	74 04                	je     0x4401e9
4401e5:	c6 00 2b             	movb   $0x2b,(%eax)
4401e8:	40                   	inc    %eax
4401e9:	f6 c2 10             	test   $0x10,%dl
4401ec:	74 04                	je     0x4401f2
4401ee:	c6 00 23             	movb   $0x23,(%eax)
4401f1:	40                   	inc    %eax
4401f2:	8a 4d 10             	mov    0x10(%ebp),%cl
4401f5:	66 c7 00 2e 2a       	movw   $0x2a2e,(%eax)
4401fa:	83 c0 02             	add    $0x2,%eax
4401fd:	84 c9                	test   %cl,%cl
4401ff:	74 03                	je     0x440204
440201:	88 08                	mov    %cl,(%eax)
440203:	40                   	inc    %eax
440204:	8b ca                	mov    %edx,%ecx
440206:	81 e1 00 30 00 00    	and    $0x3000,%ecx
44020c:	f6 c2 04             	test   $0x4,%dl
44020f:	74 38                	je     0x440249
440211:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
440217:	74 38                	je     0x440251
440219:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
44021f:	75 0d                	jne    0x44022e
440221:	b1 41                	mov    $0x41,%cl
440223:	88 08                	mov    %cl,(%eax)
440225:	c6 40 01 00          	movb   $0x0,0x1(%eax)
440229:	8b c6                	mov    %esi,%eax
44022b:	5e                   	pop    %esi
44022c:	5d                   	pop    %ebp
44022d:	c3                   	ret
44022e:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
440234:	0f 95 c1             	setne  %cl
440237:	8d 0c 4d 45 00 00 00 	lea    0x45(,%ecx,2),%ecx
44023e:	88 08                	mov    %cl,(%eax)
440240:	c6 40 01 00          	movb   $0x0,0x1(%eax)
440244:	8b c6                	mov    %esi,%eax
440246:	5e                   	pop    %esi
440247:	5d                   	pop    %ebp
440248:	c3                   	ret
440249:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
44024f:	75 0d                	jne    0x44025e
440251:	b1 66                	mov    $0x66,%cl
440253:	88 08                	mov    %cl,(%eax)
440255:	c6 40 01 00          	movb   $0x0,0x1(%eax)
440259:	8b c6                	mov    %esi,%eax
44025b:	5e                   	pop    %esi
44025c:	5d                   	pop    %ebp
44025d:	c3                   	ret
44025e:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
440264:	75 0d                	jne    0x440273
440266:	b1 61                	mov    $0x61,%cl
440268:	88 08                	mov    %cl,(%eax)
44026a:	c6 40 01 00          	movb   $0x0,0x1(%eax)
44026e:	8b c6                	mov    %esi,%eax
440270:	5e                   	pop    %esi
440271:	5d                   	pop    %ebp
440272:	c3                   	ret
440273:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
440279:	0f 95 c1             	setne  %cl
44027c:	8d 0c 4d 65 00 00 00 	lea    0x65(,%ecx,2),%ecx
440283:	88 08                	mov    %cl,(%eax)
440285:	c6 40 01 00          	movb   $0x0,0x1(%eax)
440289:	8b c6                	mov    %esi,%eax
44028b:	5e                   	pop    %esi
44028c:	5d                   	pop    %ebp
44028d:	c3                   	ret
44028e:	cc                   	int3
44028f:	cc                   	int3
440290:	55                   	push   %ebp
440291:	8b ec                	mov    %esp,%ebp
440293:	56                   	push   %esi
440294:	57                   	push   %edi
440295:	8b 7d 08             	mov    0x8(%ebp),%edi
440298:	8b f1                	mov    %ecx,%esi
44029a:	85 ff                	test   %edi,%edi
44029c:	74 48                	je     0x4402e6
44029e:	8b 4e 14             	mov    0x14(%esi),%ecx
4402a1:	83 f9 08             	cmp    $0x8,%ecx
4402a4:	72 04                	jb     0x4402aa
4402a6:	8b 06                	mov    (%esi),%eax
4402a8:	eb 02                	jmp    0x4402ac
4402aa:	8b c6                	mov    %esi,%eax
4402ac:	3b f8                	cmp    %eax,%edi
4402ae:	72 36                	jb     0x4402e6
4402b0:	83 f9 08             	cmp    $0x8,%ecx
4402b3:	72 04                	jb     0x4402b9
4402b5:	8b 16                	mov    (%esi),%edx
4402b7:	eb 02                	jmp    0x4402bb
4402b9:	8b d6                	mov    %esi,%edx
4402bb:	8b 46 10             	mov    0x10(%esi),%eax
4402be:	8d 04 42             	lea    (%edx,%eax,2),%eax
4402c1:	3b c7                	cmp    %edi,%eax
4402c3:	76 21                	jbe    0x4402e6
4402c5:	83 f9 08             	cmp    $0x8,%ecx
4402c8:	72 04                	jb     0x4402ce
4402ca:	8b 06                	mov    (%esi),%eax
4402cc:	eb 02                	jmp    0x4402d0
4402ce:	8b c6                	mov    %esi,%eax
4402d0:	ff 75 0c             	push   0xc(%ebp)
4402d3:	2b f8                	sub    %eax,%edi
4402d5:	8b ce                	mov    %esi,%ecx
4402d7:	d1 ff                	sar    $1,%edi
4402d9:	57                   	push   %edi
4402da:	56                   	push   %esi
4402db:	e8 d0 00 00 00       	call   0x4403b0
4402e0:	5f                   	pop    %edi
4402e1:	5e                   	pop    %esi
4402e2:	5d                   	pop    %ebp
4402e3:	c2 08 00             	ret    $0x8
4402e6:	8b 4e 10             	mov    0x10(%esi),%ecx
4402e9:	8b c1                	mov    %ecx,%eax
4402eb:	8b 55 0c             	mov    0xc(%ebp),%edx
4402ee:	f7 d0                	not    %eax
4402f0:	3b c2                	cmp    %edx,%eax
4402f2:	0f 86 a4 00 00 00    	jbe    0x44039c
4402f8:	53                   	push   %ebx
4402f9:	8d 1c 11             	lea    (%ecx,%edx,1),%ebx
4402fc:	85 d2                	test   %edx,%edx
4402fe:	0f 84 8f 00 00 00    	je     0x440393
440304:	81 fb fe ff ff 7f    	cmp    $0x7ffffffe,%ebx
44030a:	0f 87 91 00 00 00    	ja     0x4403a1
440310:	8b 46 14             	mov    0x14(%esi),%eax
440313:	3b c3                	cmp    %ebx,%eax
440315:	73 1a                	jae    0x440331
440317:	51                   	push   %ecx
440318:	53                   	push   %ebx
440319:	8b ce                	mov    %esi,%ecx
44031b:	e8 c0 8d ff ff       	call   0x4390e0
440320:	8b 55 0c             	mov    0xc(%ebp),%edx
440323:	85 db                	test   %ebx,%ebx
440325:	74 6c                	je     0x440393
440327:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
44032b:	72 2e                	jb     0x44035b
44032d:	8b 0e                	mov    (%esi),%ecx
44032f:	eb 2c                	jmp    0x44035d
440331:	85 db                	test   %ebx,%ebx
440333:	75 f2                	jne    0x440327
440335:	89 5e 10             	mov    %ebx,0x10(%esi)
440338:	83 f8 08             	cmp    $0x8,%eax
44033b:	72 10                	jb     0x44034d
44033d:	8b 06                	mov    (%esi),%eax
44033f:	33 c9                	xor    %ecx,%ecx
440341:	5b                   	pop    %ebx
440342:	5f                   	pop    %edi
440343:	66 89 08             	mov    %cx,(%eax)
440346:	8b c6                	mov    %esi,%eax
440348:	5e                   	pop    %esi
440349:	5d                   	pop    %ebp
44034a:	c2 08 00             	ret    $0x8
44034d:	8b c6                	mov    %esi,%eax
44034f:	33 c9                	xor    %ecx,%ecx
440351:	5b                   	pop    %ebx
440352:	5f                   	pop    %edi
440353:	5e                   	pop    %esi
440354:	66 89 08             	mov    %cx,(%eax)
440357:	5d                   	pop    %ebp
440358:	c2 08 00             	ret    $0x8
44035b:	8b ce                	mov    %esi,%ecx
44035d:	8d 04 12             	lea    (%edx,%edx,1),%eax
440360:	50                   	push   %eax
440361:	8b 46 10             	mov    0x10(%esi),%eax
440364:	57                   	push   %edi
440365:	8d 04 41             	lea    (%ecx,%eax,2),%eax
440368:	50                   	push   %eax
440369:	e8 92 2b 1a 00       	call   0x5e2f00
44036e:	83 c4 0c             	add    $0xc,%esp
440371:	89 5e 10             	mov    %ebx,0x10(%esi)
440374:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
440378:	72 11                	jb     0x44038b
44037a:	8b 06                	mov    (%esi),%eax
44037c:	33 c9                	xor    %ecx,%ecx
44037e:	66 89 0c 58          	mov    %cx,(%eax,%ebx,2)
440382:	8b c6                	mov    %esi,%eax
440384:	5b                   	pop    %ebx
440385:	5f                   	pop    %edi
440386:	5e                   	pop    %esi
440387:	5d                   	pop    %ebp
440388:	c2 08 00             	ret    $0x8
44038b:	8b c6                	mov    %esi,%eax
44038d:	33 c9                	xor    %ecx,%ecx
44038f:	66 89 0c 58          	mov    %cx,(%eax,%ebx,2)
440393:	5b                   	pop    %ebx
440394:	5f                   	pop    %edi
440395:	8b c6                	mov    %esi,%eax
440397:	5e                   	pop    %esi
440398:	5d                   	pop    %ebp
440399:	c2 08 00             	ret    $0x8
44039c:	e8 2f 8c ff ff       	call   0x438fd0
4403a1:	e8 2a 8c ff ff       	call   0x438fd0
4403a6:	cc                   	int3
4403a7:	cc                   	int3
4403a8:	cc                   	int3
4403a9:	cc                   	int3
4403aa:	cc                   	int3
4403ab:	cc                   	int3
4403ac:	cc                   	int3
4403ad:	cc                   	int3
4403ae:	cc                   	int3
4403af:	cc                   	int3
4403b0:	55                   	push   %ebp
4403b1:	8b ec                	mov    %esp,%ebp
4403b3:	53                   	push   %ebx
4403b4:	8b 5d 08             	mov    0x8(%ebp),%ebx
4403b7:	56                   	push   %esi
4403b8:	8b f1                	mov    %ecx,%esi
4403ba:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4403bd:	57                   	push   %edi
4403be:	8b 43 10             	mov    0x10(%ebx),%eax
4403c1:	3b c1                	cmp    %ecx,%eax
4403c3:	0f 82 cd 00 00 00    	jb     0x440496
4403c9:	8b 56 10             	mov    0x10(%esi),%edx
4403cc:	2b c1                	sub    %ecx,%eax
4403ce:	8b 4d 10             	mov    0x10(%ebp),%ecx
4403d1:	3b c8                	cmp    %eax,%ecx
4403d3:	0f 47 c8             	cmova  %eax,%ecx
4403d6:	8b c2                	mov    %edx,%eax
4403d8:	f7 d0                	not    %eax
4403da:	89 4d 10             	mov    %ecx,0x10(%ebp)
4403dd:	3b c1                	cmp    %ecx,%eax
4403df:	0f 86 b6 00 00 00    	jbe    0x44049b
4403e5:	8d 3c 0a             	lea    (%edx,%ecx,1),%edi
4403e8:	85 c9                	test   %ecx,%ecx