44204a:	ff 75 d0             	push   -0x30(%ebp)
44204d:	ff 75 cc             	push   -0x34(%ebp)
442050:	ff 75 c8             	push   -0x38(%ebp)
442053:	ff 75 c4             	push   -0x3c(%ebp)
442056:	53                   	push   %ebx
442057:	ff 50 10             	call   *0x10(%eax)
44205a:	83 c6 04             	add    $0x4,%esi
44205d:	3b 77 2c             	cmp    0x2c(%edi),%esi
442060:	75 d4                	jne    0x442036
442062:	8b 4d fc             	mov    -0x4(%ebp),%ecx
442065:	5f                   	pop    %edi
442066:	5e                   	pop    %esi
442067:	33 cd                	xor    %ebp,%ecx
442069:	5b                   	pop    %ebx
44206a:	e8 6b f4 19 00       	call   0x5e14da
44206f:	8b e5                	mov    %ebp,%esp
442071:	5d                   	pop    %ebp
442072:	c2 30 00             	ret    $0x30
442075:	e8 b5 ae 1a 00       	call   0x5ecf2f
44207a:	cc                   	int3
44207b:	cc                   	int3
44207c:	cc                   	int3
44207d:	cc                   	int3
44207e:	cc                   	int3
44207f:	cc                   	int3
442080:	55                   	push   %ebp
442081:	8b ec                	mov    %esp,%ebp
442083:	53                   	push   %ebx
442084:	8b d9                	mov    %ecx,%ebx
442086:	8b 4d 0c             	mov    0xc(%ebp),%ecx
442089:	56                   	push   %esi
44208a:	57                   	push   %edi
44208b:	8b 03                	mov    (%ebx),%eax
44208d:	8b f8                	mov    %eax,%edi
44208f:	8b 70 04             	mov    0x4(%eax),%esi
442092:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
442096:	75 24                	jne    0x4420bc
442098:	51                   	push   %ecx
442099:	8d 46 10             	lea    0x10(%esi),%eax
44209c:	8b cb                	mov    %ebx,%ecx
44209e:	50                   	push   %eax
44209f:	e8 ac 02 00 00       	call   0x442350
4420a4:	84 c0                	test   %al,%al
4420a6:	74 05                	je     0x4420ad
4420a8:	8b 76 08             	mov    0x8(%esi),%esi
4420ab:	eb 04                	jmp    0x4420b1
4420ad:	8b fe                	mov    %esi,%edi
4420af:	8b 36                	mov    (%esi),%esi
4420b1:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
4420b5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4420b8:	74 de                	je     0x442098
4420ba:	8b 03                	mov    (%ebx),%eax
4420bc:	3b f8                	cmp    %eax,%edi
4420be:	74 1c                	je     0x4420dc
4420c0:	8d 47 10             	lea    0x10(%edi),%eax
4420c3:	50                   	push   %eax
4420c4:	51                   	push   %ecx
4420c5:	8b cb                	mov    %ebx,%ecx
4420c7:	e8 84 02 00 00       	call   0x442350
4420cc:	84 c0                	test   %al,%al
4420ce:	75 0c                	jne    0x4420dc
4420d0:	8b 45 08             	mov    0x8(%ebp),%eax
4420d3:	89 38                	mov    %edi,(%eax)
4420d5:	5f                   	pop    %edi
4420d6:	5e                   	pop    %esi
4420d7:	5b                   	pop    %ebx
4420d8:	5d                   	pop    %ebp
4420d9:	c2 08 00             	ret    $0x8
4420dc:	8b 45 08             	mov    0x8(%ebp),%eax
4420df:	8b 0b                	mov    (%ebx),%ecx
4420e1:	5f                   	pop    %edi
4420e2:	5e                   	pop    %esi
4420e3:	89 08                	mov    %ecx,(%eax)
4420e5:	5b                   	pop    %ebx
4420e6:	5d                   	pop    %ebp
4420e7:	c2 08 00             	ret    $0x8
4420ea:	cc                   	int3
4420eb:	cc                   	int3
4420ec:	cc                   	int3
4420ed:	cc                   	int3
4420ee:	cc                   	int3
4420ef:	cc                   	int3
4420f0:	55                   	push   %ebp
4420f1:	8b ec                	mov    %esp,%ebp
4420f3:	56                   	push   %esi
4420f4:	8b f1                	mov    %ecx,%esi
4420f6:	57                   	push   %edi
4420f7:	8b 7d 08             	mov    0x8(%ebp),%edi
4420fa:	8b 4e 04             	mov    0x4(%esi),%ecx
4420fd:	3b f9                	cmp    %ecx,%edi
4420ff:	73 39                	jae    0x44213a
442101:	8b 06                	mov    (%esi),%eax
442103:	3b c7                	cmp    %edi,%eax
442105:	77 33                	ja     0x44213a
442107:	2b f8                	sub    %eax,%edi
442109:	8b c1                	mov    %ecx,%eax
44210b:	c1 ff 02             	sar    $0x2,%edi
44210e:	3b 4e 08             	cmp    0x8(%esi),%ecx
442111:	75 0d                	jne    0x442120
442113:	51                   	push   %ecx
442114:	8b ce                	mov    %esi,%ecx
442116:	e8 c5 02 00 00       	call   0x4423e0
44211b:	8b 4e 04             	mov    0x4(%esi),%ecx
44211e:	8b c1                	mov    %ecx,%eax
442120:	85 c9                	test   %ecx,%ecx
442122:	74 35                	je     0x442159
442124:	8b 06                	mov    (%esi),%eax
442126:	8b 04 b8             	mov    (%eax,%edi,4),%eax
442129:	89 01                	mov    %eax,(%ecx)
44212b:	8b 46 04             	mov    0x4(%esi),%eax
44212e:	83 c0 04             	add    $0x4,%eax
442131:	5f                   	pop    %edi
442132:	89 46 04             	mov    %eax,0x4(%esi)
442135:	5e                   	pop    %esi
442136:	5d                   	pop    %ebp
442137:	c2 04 00             	ret    $0x4
44213a:	8b c1                	mov    %ecx,%eax
44213c:	3b 4e 08             	cmp    0x8(%esi),%ecx
44213f:	75 0d                	jne    0x44214e
442141:	51                   	push   %ecx
442142:	8b ce                	mov    %esi,%ecx
442144:	e8 97 02 00 00       	call   0x4423e0
442149:	8b 4e 04             	mov    0x4(%esi),%ecx
44214c:	8b c1                	mov    %ecx,%eax
44214e:	85 c9                	test   %ecx,%ecx
442150:	74 07                	je     0x442159
442152:	8b 07                	mov    (%edi),%eax
442154:	89 01                	mov    %eax,(%ecx)
442156:	8b 46 04             	mov    0x4(%esi),%eax
442159:	83 c0 04             	add    $0x4,%eax
44215c:	5f                   	pop    %edi
44215d:	89 46 04             	mov    %eax,0x4(%esi)
442160:	5e                   	pop    %esi
442161:	5d                   	pop    %ebp
442162:	c2 04 00             	ret    $0x4
442165:	cc                   	int3
442166:	cc                   	int3
442167:	cc                   	int3
442168:	cc                   	int3
442169:	cc                   	int3
44216a:	cc                   	int3
44216b:	cc                   	int3
44216c:	cc                   	int3
44216d:	cc                   	int3
44216e:	cc                   	int3
44216f:	cc                   	int3
442170:	55                   	push   %ebp
442171:	8b ec                	mov    %esp,%ebp
442173:	83 ec 08             	sub    $0x8,%esp
442176:	53                   	push   %ebx
442177:	57                   	push   %edi
442178:	8b 7d 08             	mov    0x8(%ebp),%edi
44217b:	8b d9                	mov    %ecx,%ebx
44217d:	3b df                	cmp    %edi,%ebx
44217f:	0f 84 40 01 00 00    	je     0x4422c5
442185:	8b 47 04             	mov    0x4(%edi),%eax
442188:	8b 0b                	mov    (%ebx),%ecx
44218a:	56                   	push   %esi
44218b:	8b 37                	mov    (%edi),%esi
44218d:	89 75 f8             	mov    %esi,-0x8(%ebp)
442190:	3b f0                	cmp    %eax,%esi
442192:	75 0e                	jne    0x4421a2
442194:	5e                   	pop    %esi
442195:	5f                   	pop    %edi
442196:	89 4b 04             	mov    %ecx,0x4(%ebx)
442199:	8b c3                	mov    %ebx,%eax
44219b:	5b                   	pop    %ebx
44219c:	8b e5                	mov    %ebp,%esp
44219e:	5d                   	pop    %ebp
44219f:	c2 04 00             	ret    $0x4
4421a2:	8b 7b 04             	mov    0x4(%ebx),%edi
4421a5:	8b d0                	mov    %eax,%edx
4421a7:	2b f9                	sub    %ecx,%edi
4421a9:	2b d6                	sub    %esi,%edx
4421ab:	c1 ff 02             	sar    $0x2,%edi
4421ae:	c1 fa 02             	sar    $0x2,%edx
4421b1:	89 7d fc             	mov    %edi,-0x4(%ebp)
4421b4:	3b d7                	cmp    %edi,%edx
4421b6:	8b 7d 08             	mov    0x8(%ebp),%edi
4421b9:	77 28                	ja     0x4421e3
4421bb:	2b c6                	sub    %esi,%eax
4421bd:	50                   	push   %eax
4421be:	56                   	push   %esi
4421bf:	51                   	push   %ecx
4421c0:	e8 bb 12 1a 00       	call   0x5e3480
4421c5:	8b 4f 04             	mov    0x4(%edi),%ecx
4421c8:	83 c4 0c             	add    $0xc,%esp
4421cb:	2b 0f                	sub    (%edi),%ecx
4421cd:	8b 03                	mov    (%ebx),%eax
4421cf:	c1 f9 02             	sar    $0x2,%ecx
4421d2:	5e                   	pop    %esi
4421d3:	5f                   	pop    %edi
4421d4:	8d 04 88             	lea    (%eax,%ecx,4),%eax
4421d7:	89 43 04             	mov    %eax,0x4(%ebx)
4421da:	8b c3                	mov    %ebx,%eax
4421dc:	5b                   	pop    %ebx
4421dd:	8b e5                	mov    %ebp,%esp
4421df:	5d                   	pop    %ebp
4421e0:	c2 04 00             	ret    $0x4
4421e3:	8b 43 08             	mov    0x8(%ebx),%eax
4421e6:	2b c1                	sub    %ecx,%eax
4421e8:	c1 f8 02             	sar    $0x2,%eax
4421eb:	3b d0                	cmp    %eax,%edx
4421ed:	77 3f                	ja     0x44222e
4421ef:	8b 45 fc             	mov    -0x4(%ebp),%eax
4421f2:	8b 7d f8             	mov    -0x8(%ebp),%edi
4421f5:	8d 34 85 00 00 00 00 	lea    0x0(,%eax,4),%esi
4421fc:	56                   	push   %esi
4421fd:	57                   	push   %edi
4421fe:	51                   	push   %ecx
4421ff:	e8 7c 12 1a 00       	call   0x5e3480
442204:	8d 04 3e             	lea    (%esi,%edi,1),%eax
442207:	8b 75 08             	mov    0x8(%ebp),%esi
44220a:	8b 7b 04             	mov    0x4(%ebx),%edi
44220d:	8b 76 04             	mov    0x4(%esi),%esi
442210:	2b f0                	sub    %eax,%esi
442212:	56                   	push   %esi
442213:	50                   	push   %eax
442214:	57                   	push   %edi
442215:	e8 66 12 1a 00       	call   0x5e3480
44221a:	83 c4 18             	add    $0x18,%esp
44221d:	8d 04 3e             	lea    (%esi,%edi,1),%eax
442220:	89 43 04             	mov    %eax,0x4(%ebx)
442223:	8b c3                	mov    %ebx,%eax
442225:	5e                   	pop    %esi
442226:	5f                   	pop    %edi
442227:	5b                   	pop    %ebx
442228:	8b e5                	mov    %ebp,%esp
44222a:	5d                   	pop    %ebp
44222b:	c2 04 00             	ret    $0x4
44222e:	85 c9                	test   %ecx,%ecx
442230:	74 3c                	je     0x44226e
442232:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
442237:	0f 87 97 00 00 00    	ja     0x4422d4
44223d:	c1 e0 02             	shl    $0x2,%eax
442240:	3d 00 10 00 00       	cmp    $0x1000,%eax
442245:	72 1e                	jb     0x442265
442247:	f6 c1 1f             	test   $0x1f,%cl
44224a:	0f 85 84 00 00 00    	jne    0x4422d4
442250:	8b 41 fc             	mov    -0x4(%ecx),%eax
442253:	3b c1                	cmp    %ecx,%eax
442255:	73 7d                	jae    0x4422d4
442257:	2b c8                	sub    %eax,%ecx
442259:	83 f9 04             	cmp    $0x4,%ecx
44225c:	72 76                	jb     0x4422d4
44225e:	83 f9 23             	cmp    $0x23,%ecx
442261:	77 71                	ja     0x4422d4
442263:	8b c8                	mov    %eax,%ecx
442265:	51                   	push   %ecx
442266:	e8 65 e2 0a 00       	call   0x4f04d0
44226b:	83 c4 04             	add    $0x4,%esp
44226e:	8b 77 04             	mov    0x4(%edi),%esi
442271:	2b 37                	sub    (%edi),%esi
442273:	c1 fe 02             	sar    $0x2,%esi
442276:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
44227c:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
442283:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
44228a:	85 f6                	test   %esi,%esi
44228c:	74 36                	je     0x4422c4
44228e:	81 fe ff ff ff 3f    	cmp    $0x3fffffff,%esi
442294:	77 39                	ja     0x4422cf
442296:	56                   	push   %esi
442297:	e8 a4 01 00 00       	call   0x442440
44229c:	8b f8                	mov    %eax,%edi
44229e:	89 3b                	mov    %edi,(%ebx)
4422a0:	89 7b 04             	mov    %edi,0x4(%ebx)
4422a3:	8d 0c b7             	lea    (%edi,%esi,4),%ecx
4422a6:	8b 75 08             	mov    0x8(%ebp),%esi
4422a9:	89 4b 08             	mov    %ecx,0x8(%ebx)
4422ac:	8b 0e                	mov    (%esi),%ecx
4422ae:	8b 76 04             	mov    0x4(%esi),%esi
4422b1:	2b f1                	sub    %ecx,%esi
4422b3:	56                   	push   %esi
4422b4:	51                   	push   %ecx
4422b5:	57                   	push   %edi
4422b6:	e8 c5 11 1a 00       	call   0x5e3480
4422bb:	8d 04 3e             	lea    (%esi,%edi,1),%eax
4422be:	83 c4 0c             	add    $0xc,%esp
4422c1:	89 43 04             	mov    %eax,0x4(%ebx)
4422c4:	5e                   	pop    %esi
4422c5:	5f                   	pop    %edi
4422c6:	8b c3                	mov    %ebx,%eax
4422c8:	5b                   	pop    %ebx
4422c9:	8b e5                	mov    %ebp,%esp
4422cb:	5d                   	pop    %ebp
4422cc:	c2 04 00             	ret    $0x4
4422cf:	e8 cc 01 00 00       	call   0x4424a0
4422d4:	e8 56 ac 1a 00       	call   0x5ecf2f
4422d9:	cc                   	int3
4422da:	cc                   	int3
4422db:	cc                   	int3
4422dc:	cc                   	int3
4422dd:	cc                   	int3
4422de:	cc                   	int3
4422df:	cc                   	int3
4422e0:	56                   	push   %esi
4422e1:	8b f1                	mov    %ecx,%esi
4422e3:	8b 16                	mov    (%esi),%edx
4422e5:	85 d2                	test   %edx,%edx
4422e7:	74 50                	je     0x442339
4422e9:	8b 46 08             	mov    0x8(%esi),%eax
4422ec:	2b c2                	sub    %edx,%eax
4422ee:	c1 f8 02             	sar    $0x2,%eax
4422f1:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
4422f6:	77 43                	ja     0x44233b
4422f8:	c1 e0 02             	shl    $0x2,%eax
4422fb:	3d 00 10 00 00       	cmp    $0x1000,%eax
442300:	72 1a                	jb     0x44231c
442302:	f6 c2 1f             	test   $0x1f,%dl
442305:	75 34                	jne    0x44233b
442307:	8b 42 fc             	mov    -0x4(%edx),%eax
44230a:	3b c2                	cmp    %edx,%eax
44230c:	73 2d                	jae    0x44233b
44230e:	2b d0                	sub    %eax,%edx
442310:	83 fa 04             	cmp    $0x4,%edx
442313:	72 26                	jb     0x44233b
442315:	83 fa 23             	cmp    $0x23,%edx
442318:	77 21                	ja     0x44233b
44231a:	8b d0                	mov    %eax,%edx
44231c:	52                   	push   %edx
44231d:	e8 ae e1 0a 00       	call   0x4f04d0
442322:	83 c4 04             	add    $0x4,%esp
442325:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
44232b:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
442332:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
442339:	5e                   	pop    %esi
44233a:	c3                   	ret
44233b:	e8 ef ab 1a 00       	call   0x5ecf2f
442340:	cc                   	int3
442341:	cc                   	int3
442342:	cc                   	int3
442343:	cc                   	int3
442344:	cc                   	int3
442345:	cc                   	int3
442346:	cc                   	int3
442347:	cc                   	int3
442348:	cc                   	int3
442349:	cc                   	int3
44234a:	cc                   	int3
44234b:	cc                   	int3
44234c:	cc                   	int3
44234d:	cc                   	int3
44234e:	cc                   	int3
44234f:	cc                   	int3
442350:	55                   	push   %ebp
442351:	8b ec                	mov    %esp,%ebp
442353:	51                   	push   %ecx
442354:	8b 4d 0c             	mov    0xc(%ebp),%ecx
442357:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
44235b:	72 04                	jb     0x442361