444e9e:	8b 04 08             	mov    (%eax,%ecx,1),%eax
444ea1:	6a ff                	push   $0xffffffff
444ea3:	50                   	push   %eax
444ea4:	8b 47 04             	mov    0x4(%edi),%eax
444ea7:	6a ff                	push   $0xffffffff
444ea9:	ff 75 0c             	push   0xc(%ebp)
444eac:	83 e0 01             	and    $0x1,%eax
444eaf:	50                   	push   %eax
444eb0:	6a 7f                	push   $0x7f
444eb2:	ff 15 28 b1 44 00    	call   *0x44b128
444eb8:	83 f8 02             	cmp    $0x2,%eax
444ebb:	74 26                	je     0x444ee3
444ebd:	8b 47 08             	mov    0x8(%edi),%eax
444ec0:	8d 4b 01             	lea    0x1(%ebx),%ecx
444ec3:	3b 0c 85 b8 67 46 00 	cmp    0x4667b8(,%eax,4),%ecx
444eca:	8b 47 14             	mov    0x14(%edi),%eax
444ecd:	1b db                	sbb    %ebx,%ebx
444ecf:	23 d9                	and    %ecx,%ebx
444ed1:	83 3c 98 00          	cmpl   $0x0,(%eax,%ebx,4)
444ed5:	74 05                	je     0x444edc
444ed7:	3b 5d fc             	cmp    -0x4(%ebp),%ebx
444eda:	75 ae                	jne    0x444e8a
444edc:	be 90 04 07 80       	mov    $0x80070490,%esi
444ee1:	eb 05                	jmp    0x444ee8
444ee3:	8b 45 10             	mov    0x10(%ebp),%eax
444ee6:	89 18                	mov    %ebx,(%eax)
444ee8:	5b                   	pop    %ebx
444ee9:	5f                   	pop    %edi
444eea:	8b c6                	mov    %esi,%eax
444eec:	5e                   	pop    %esi
444eed:	8b e5                	mov    %ebp,%esp
444eef:	5d                   	pop    %ebp
444ef0:	c2 0c 00             	ret    $0xc
444ef3:	55                   	push   %ebp
444ef4:	8b ec                	mov    %esp,%ebp
444ef6:	51                   	push   %ecx
444ef7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
444efb:	8d 45 fc             	lea    -0x4(%ebp),%eax
444efe:	56                   	push   %esi
444eff:	50                   	push   %eax
444f00:	ff 75 14             	push   0x14(%ebp)
444f03:	ff 75 0c             	push   0xc(%ebp)
444f06:	ff 75 08             	push   0x8(%ebp)
444f09:	e8 37 02 00 00       	call   0x445145
444f0e:	8b f0                	mov    %eax,%esi
444f10:	85 f6                	test   %esi,%esi
444f12:	78 29                	js     0x444f3d
444f14:	8b 55 fc             	mov    -0x4(%ebp),%edx
444f17:	8b ca                	mov    %edx,%ecx
444f19:	57                   	push   %edi
444f1a:	8b 7d 10             	mov    0x10(%ebp),%edi
444f1d:	83 3c 97 00          	cmpl   $0x0,(%edi,%edx,4)
444f21:	74 14                	je     0x444f37
444f23:	8d 41 01             	lea    0x1(%ecx),%eax
444f26:	3b 45 0c             	cmp    0xc(%ebp),%eax
444f29:	1b c9                	sbb    %ecx,%ecx
444f2b:	23 c8                	and    %eax,%ecx
444f2d:	3b ca                	cmp    %edx,%ecx
444f2f:	74 15                	je     0x444f46
444f31:	83 3c 8f 00          	cmpl   $0x0,(%edi,%ecx,4)
444f35:	75 ec                	jne    0x444f23
444f37:	8b 45 18             	mov    0x18(%ebp),%eax
444f3a:	89 08                	mov    %ecx,(%eax)
444f3c:	5f                   	pop    %edi
444f3d:	8b c6                	mov    %esi,%eax
444f3f:	5e                   	pop    %esi
444f40:	8b e5                	mov    %ebp,%esp
444f42:	5d                   	pop    %ebp
444f43:	c2 14 00             	ret    $0x14
444f46:	be da 10 07 80       	mov    $0x800710da,%esi
444f4b:	56                   	push   %esi
444f4c:	68 5f 02 00 00       	push   $0x25f
444f51:	68 e8 67 46 00       	push   $0x4667e8
444f56:	e8 78 e8 fb ff       	call   0x4037d3
444f5b:	eb df                	jmp    0x444f3c
444f5d:	55                   	push   %ebp
444f5e:	8b ec                	mov    %esp,%ebp
444f60:	51                   	push   %ecx
444f61:	51                   	push   %ecx
444f62:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
444f66:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
444f6a:	53                   	push   %ebx
444f6b:	8b 5d 08             	mov    0x8(%ebp),%ebx
444f6e:	56                   	push   %esi
444f6f:	57                   	push   %edi
444f70:	8b 7d 10             	mov    0x10(%ebp),%edi
444f73:	85 db                	test   %ebx,%ebx
444f75:	75 1c                	jne    0x444f93
444f77:	b8 57 00 07 80       	mov    $0x80070057,%eax
444f7c:	50                   	push   %eax
444f7d:	68 0d 02 00 00       	push   $0x20d
444f82:	68 e8 67 46 00       	push   $0x4667e8
444f87:	8b f0                	mov    %eax,%esi
444f89:	e8 45 e8 fb ff       	call   0x4037d3
444f8e:	e9 90 00 00 00       	jmp    0x445023
444f93:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
444f97:	75 0d                	jne    0x444fa6
444f99:	b8 57 00 07 80       	mov    $0x80070057,%eax
444f9e:	50                   	push   %eax
444f9f:	68 0e 02 00 00       	push   $0x20e
444fa4:	eb dc                	jmp    0x444f82
444fa6:	8b 43 08             	mov    0x8(%ebx),%eax
444fa9:	83 f8 0c             	cmp    $0xc,%eax
444fac:	72 07                	jb     0x444fb5
444fae:	be 57 00 07 80       	mov    $0x80070057,%esi
444fb3:	eb 6e                	jmp    0x445023
444fb5:	8d 4d fc             	lea    -0x4(%ebp),%ecx
444fb8:	51                   	push   %ecx
444fb9:	ff 75 0c             	push   0xc(%ebp)
444fbc:	ff 34 85 b8 67 46 00 	push   0x4667b8(,%eax,4)
444fc3:	53                   	push   %ebx
444fc4:	e8 7c 01 00 00       	call   0x445145
444fc9:	8b f0                	mov    %eax,%esi
444fcb:	85 f6                	test   %esi,%esi
444fcd:	78 54                	js     0x445023
444fcf:	8b 4b 14             	mov    0x14(%ebx),%ecx
444fd2:	8b 45 fc             	mov    -0x4(%ebp),%eax
444fd5:	ff 34 81             	push   (%ecx,%eax,4)
444fd8:	53                   	push   %ebx
444fd9:	e8 de 01 00 00       	call   0x4451bc
444fde:	85 c0                	test   %eax,%eax
444fe0:	75 0d                	jne    0x444fef
444fe2:	85 ff                	test   %edi,%edi
444fe4:	74 02                	je     0x444fe8
444fe6:	21 07                	and    %eax,(%edi)
444fe8:	be 90 04 07 80       	mov    $0x80070490,%esi
444fed:	eb 34                	jmp    0x445023
444fef:	8d 45 f8             	lea    -0x8(%ebp),%eax
444ff2:	50                   	push   %eax
444ff3:	ff 75 0c             	push   0xc(%ebp)
444ff6:	53                   	push   %ebx
444ff7:	e8 54 fe ff ff       	call   0x444e50
444ffc:	8b f0                	mov    %eax,%esi
444ffe:	81 fe 90 04 07 80    	cmp    $0x80070490,%esi
445004:	74 19                	je     0x44501f
445006:	85 f6                	test   %esi,%esi
445008:	78 19                	js     0x445023
44500a:	85 ff                	test   %edi,%edi
44500c:	74 11                	je     0x44501f
44500e:	8b 4b 14             	mov    0x14(%ebx),%ecx
445011:	8b 45 f8             	mov    -0x8(%ebp),%eax
445014:	ff 34 81             	push   (%ecx,%eax,4)
445017:	53                   	push   %ebx
445018:	e8 9f 01 00 00       	call   0x4451bc
44501d:	89 07                	mov    %eax,(%edi)
44501f:	85 f6                	test   %esi,%esi
445021:	79 07                	jns    0x44502a
445023:	85 ff                	test   %edi,%edi
445025:	74 03                	je     0x44502a
445027:	83 27 00             	andl   $0x0,(%edi)
44502a:	5f                   	pop    %edi
44502b:	8b c6                	mov    %esi,%eax
44502d:	5e                   	pop    %esi
44502e:	5b                   	pop    %ebx
44502f:	8b e5                	mov    %ebp,%esp
445031:	5d                   	pop    %ebp
445032:	c2 0c 00             	ret    $0xc
445035:	55                   	push   %ebp
445036:	8b ec                	mov    %esp,%ebp
445038:	83 ec 0c             	sub    $0xc,%esp
44503b:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
44503f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
445043:	56                   	push   %esi
445044:	57                   	push   %edi
445045:	8b 7d 08             	mov    0x8(%ebp),%edi
445048:	8b 47 08             	mov    0x8(%edi),%eax
44504b:	40                   	inc    %eax
44504c:	89 45 f4             	mov    %eax,-0xc(%ebp)
44504f:	83 f8 0c             	cmp    $0xc,%eax
445052:	72 0a                	jb     0x44505e
445054:	be da 10 07 80       	mov    $0x800710da,%esi
445059:	e9 c6 00 00 00       	jmp    0x445124
44505e:	8b 04 85 b8 67 46 00 	mov    0x4667b8(,%eax,4),%eax
445065:	8d 4d fc             	lea    -0x4(%ebp),%ecx
445068:	51                   	push   %ecx
445069:	6a 04                	push   $0x4
44506b:	59                   	pop    %ecx
44506c:	f7 e1                	mul    %ecx
44506e:	52                   	push   %edx
44506f:	50                   	push   %eax
445070:	e8 b9 1d fc ff       	call   0x406e2e
445075:	8b f0                	mov    %eax,%esi
445077:	85 f6                	test   %esi,%esi
445079:	0f 88 a5 00 00 00    	js     0x445124
44507f:	53                   	push   %ebx
445080:	6a 01                	push   $0x1
445082:	ff 75 fc             	push   -0x4(%ebp)
445085:	e8 4a e8 fb ff       	call   0x4038d4
44508a:	8b d8                	mov    %eax,%ebx
44508c:	85 db                	test   %ebx,%ebx
44508e:	75 17                	jne    0x4450a7
445090:	be 0e 00 07 80       	mov    $0x8007000e,%esi
445095:	56                   	push   %esi
445096:	68 c6 02 00 00       	push   $0x2c6
44509b:	68 e8 67 46 00       	push   $0x4667e8
4450a0:	e8 2e e7 fb ff       	call   0x4037d3
4450a5:	eb 7c                	jmp    0x445123
4450a7:	33 d2                	xor    %edx,%edx
4450a9:	89 55 08             	mov    %edx,0x8(%ebp)
4450ac:	39 57 0c             	cmp    %edx,0xc(%edi)
4450af:	76 4f                	jbe    0x445100
4450b1:	8b 47 18             	mov    0x18(%edi),%eax
4450b4:	ff 34 90             	push   (%eax,%edx,4)
4450b7:	57                   	push   %edi
4450b8:	e8 ff 00 00 00       	call   0x4451bc
4450bd:	83 3f 01             	cmpl   $0x1,(%edi)
4450c0:	75 06                	jne    0x4450c8
4450c2:	8b 4f 10             	mov    0x10(%edi),%ecx
4450c5:	8b 04 08             	mov    (%eax,%ecx,1),%eax
4450c8:	85 c0                	test   %eax,%eax
4450ca:	74 62                	je     0x44512e
4450cc:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4450cf:	51                   	push   %ecx
4450d0:	50                   	push   %eax
4450d1:	8b 45 f4             	mov    -0xc(%ebp),%eax
4450d4:	53                   	push   %ebx
4450d5:	ff 34 85 b8 67 46 00 	push   0x4667b8(,%eax,4)
4450dc:	57                   	push   %edi
4450dd:	e8 11 fe ff ff       	call   0x444ef3
4450e2:	8b f0                	mov    %eax,%esi
4450e4:	85 f6                	test   %esi,%esi
4450e6:	78 31                	js     0x445119
4450e8:	8b 47 18             	mov    0x18(%edi),%eax
4450eb:	8b 55 08             	mov    0x8(%ebp),%edx
4450ee:	8b 0c 90             	mov    (%eax,%edx,4),%ecx
4450f1:	42                   	inc    %edx
4450f2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4450f5:	89 55 08             	mov    %edx,0x8(%ebp)
4450f8:	89 0c 83             	mov    %ecx,(%ebx,%eax,4)
4450fb:	3b 57 0c             	cmp    0xc(%edi),%edx
4450fe:	72 b1                	jb     0x4450b1
445100:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
445104:	8b 45 f4             	mov    -0xc(%ebp),%eax
445107:	89 47 08             	mov    %eax,0x8(%edi)
44510a:	74 08                	je     0x445114
44510c:	ff 77 14             	push   0x14(%edi)
44510f:	e8 85 e8 fb ff       	call   0x403999
445114:	89 5f 14             	mov    %ebx,0x14(%edi)
445117:	33 db                	xor    %ebx,%ebx
445119:	85 db                	test   %ebx,%ebx
44511b:	74 06                	je     0x445123
44511d:	53                   	push   %ebx
44511e:	e8 76 e8 fb ff       	call   0x403999
445123:	5b                   	pop    %ebx
445124:	5f                   	pop    %edi
445125:	8b c6                	mov    %esi,%eax
445127:	5e                   	pop    %esi
445128:	8b e5                	mov    %ebp,%esp
44512a:	5d                   	pop    %ebp
44512b:	c2 04 00             	ret    $0x4
44512e:	be 57 00 07 80       	mov    $0x80070057,%esi
445133:	56                   	push   %esi
445134:	68 cb 02 00 00       	push   $0x2cb
445139:	68 e8 67 46 00       	push   $0x4667e8
44513e:	e8 90 e6 fb ff       	call   0x4037d3
445143:	eb d4                	jmp    0x445119
445145:	55                   	push   %ebp
445146:	8b ec                	mov    %esp,%ebp
445148:	51                   	push   %ecx
445149:	8b 45 08             	mov    0x8(%ebp),%eax
44514c:	53                   	push   %ebx
44514d:	56                   	push   %esi
44514e:	57                   	push   %edi
44514f:	33 ff                	xor    %edi,%edi
445151:	f6 40 04 01          	testb  $0x1,0x4(%eax)
445155:	8b f7                	mov    %edi,%esi
445157:	8b df                	mov    %edi,%ebx
445159:	89 75 fc             	mov    %esi,-0x4(%ebp)
44515c:	74 1a                	je     0x445178
44515e:	57                   	push   %edi
44515f:	ff 75 10             	push   0x10(%ebp)
445162:	8d 45 fc             	lea    -0x4(%ebp),%eax
445165:	50                   	push   %eax
445166:	e8 a5 d1 fb ff       	call   0x402310
44516b:	8b 75 fc             	mov    -0x4(%ebp),%esi
44516e:	8b f8                	mov    %eax,%edi
445170:	85 ff                	test   %edi,%edi
445172:	78 33                	js     0x4451a7
445174:	8b d6                	mov    %esi,%edx
445176:	eb 1b                	jmp    0x445193
445178:	8b 55 10             	mov    0x10(%ebp),%edx
44517b:	eb 16                	jmp    0x445193
44517d:	0f b7 c0             	movzwl %ax,%eax
445180:	8d 52 02             	lea    0x2(%edx),%edx
445183:	69 c8 fd 01 00 00    	imul   $0x1fd,%eax,%ecx
445189:	69 db 3f 00 01 00    	imul   $0x1003f,%ebx,%ebx
44518f:	f7 d1                	not    %ecx
445191:	03 d9                	add    %ecx,%ebx
445193:	0f b7 02             	movzwl (%edx),%eax
445196:	66 85 c0             	test   %ax,%ax
445199:	75 e2                	jne    0x44517d
44519b:	8b c3                	mov    %ebx,%eax
44519d:	33 d2                	xor    %edx,%edx
44519f:	f7 75 0c             	divl   0xc(%ebp)
4451a2:	8b 45 14             	mov    0x14(%ebp),%eax
4451a5:	89 10                	mov    %edx,(%eax)
4451a7:	85 f6                	test   %esi,%esi
4451a9:	74 06                	je     0x4451b1
4451ab:	56                   	push   %esi
4451ac:	e8 3e 03 00 00       	call   0x4454ef
4451b1:	8b c7                	mov    %edi,%eax
4451b3:	5f                   	pop    %edi
4451b4:	5e                   	pop    %esi
4451b5:	5b                   	pop    %ebx
4451b6:	8b e5                	mov    %ebp,%esp
4451b8:	5d                   	pop    %ebp
4451b9:	c2 10 00             	ret    $0x10
4451bc:	55                   	push   %ebp
4451bd:	8b ec                	mov    %esp,%ebp
4451bf:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4451c2:	85 c9                	test   %ecx,%ecx
4451c4:	75 04                	jne    0x4451ca
4451c6:	33 c0                	xor    %eax,%eax
4451c8:	eb 13                	jmp    0x4451dd
4451ca:	8b 45 08             	mov    0x8(%ebp),%eax
4451cd:	8b 40 1c             	mov    0x1c(%eax),%eax
4451d0:	85 c0                	test   %eax,%eax
4451d2:	74 07                	je     0x4451db
4451d4:	8b 00                	mov    (%eax),%eax
4451d6:	48                   	dec    %eax
4451d7:	03 c1                	add    %ecx,%eax
4451d9:	eb 02                	jmp    0x4451dd
4451db:	8b c1                	mov    %ecx,%eax
4451dd:	5d                   	pop    %ebp
4451de:	c2 08 00             	ret    $0x8
4451e1:	55                   	push   %ebp
4451e2:	8b ec                	mov    %esp,%ebp
4451e4:	51                   	push   %ecx
4451e5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4451e9:	56                   	push   %esi
4451ea:	57                   	push   %edi
4451eb:	8b 7d 08             	mov    0x8(%ebp),%edi
4451ee:	85 ff                	test   %edi,%edi
4451f0:	75 1c                	jne    0x44520e
4451f2:	b8 57 00 07 80       	mov    $0x80070057,%eax
4451f7:	50                   	push   %eax
4451f8:	68 14 01 00 00       	push   $0x114
4451fd:	68 e8 67 46 00       	push   $0x4667e8
445202:	8b f0                	mov    %eax,%esi
445204:	e8 ca e5 fb ff       	call   0x4037d3
445209:	e9 d1 00 00 00       	jmp    0x4452df
44520e:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
445212:	75 0d                	jne    0x445221
445214:	b8 57 00 07 80       	mov    $0x80070057,%eax
445219:	50                   	push   %eax
44521a:	68 15 01 00 00       	push   $0x115
44521f:	eb dc                	jmp    0x4451fd
445221:	8b 4f 08             	mov    0x8(%edi),%ecx
445224:	83 f9 0c             	cmp    $0xc,%ecx
445227:	72 0a                	jb     0x445233