445ef7:	e8 e0 21 fe ff       	call   0x4280dc
445efc:	8b f0                	mov    %eax,%esi
445efe:	89 73 40             	mov    %esi,0x40(%ebx)
445f01:	ba ff ff ff 00       	mov    $0xffffff,%edx
445f06:	33 c0                	xor    %eax,%eax
445f08:	e8 0f 97 fe ff       	call   0x42f61c
445f0d:	8b d0                	mov    %eax,%edx
445f0f:	8b c6                	mov    %esi,%eax
445f11:	e8 42 23 fe ff       	call   0x428258
445f16:	8b c3                	mov    %ebx,%eax
445f18:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
445f1c:	74 0f                	je     0x445f2d
445f1e:	e8 11 df fb ff       	call   0x403e34
445f23:	64 8f 05 00 00 00 00 	pop    %fs:0x0
445f2a:	83 c4 0c             	add    $0xc,%esp
445f2d:	8b c3                	mov    %ebx,%eax
445f2f:	5e                   	pop    %esi
445f30:	5b                   	pop    %ebx
445f31:	59                   	pop    %ecx
445f32:	5d                   	pop    %ebp
445f33:	c3                   	ret
445f34:	53                   	push   %ebx
445f35:	56                   	push   %esi
445f36:	e8 09 df fb ff       	call   0x403e44
445f3b:	8b da                	mov    %edx,%ebx
445f3d:	8b f0                	mov    %eax,%esi
445f3f:	8b 46 40             	mov    0x40(%esi),%eax
445f42:	e8 31 db fb ff       	call   0x403a78
445f47:	8b d3                	mov    %ebx,%edx
445f49:	80 e2 fc             	and    $0xfc,%dl
445f4c:	8b c6                	mov    %esi,%eax
445f4e:	e8 15 db fb ff       	call   0x403a68
445f53:	84 db                	test   %bl,%bl
445f55:	7e 07                	jle    0x445f5e
445f57:	8b c6                	mov    %esi,%eax
445f59:	e8 ce de fb ff       	call   0x403e2c
445f5e:	5e                   	pop    %esi
445f5f:	5b                   	pop    %ebx
445f60:	c3                   	ret
445f61:	8d 40 00             	lea    0x0(%eax),%eax
445f64:	53                   	push   %ebx
445f65:	56                   	push   %esi
445f66:	57                   	push   %edi
445f67:	8b f2                	mov    %edx,%esi
445f69:	8b d8                	mov    %eax,%ebx
445f6b:	8b d6                	mov    %esi,%edx
445f6d:	8b c3                	mov    %ebx,%eax
445f6f:	e8 68 fe ff ff       	call   0x445ddc
445f74:	8b c6                	mov    %esi,%eax
445f76:	8b 15 c4 33 44 00    	mov    0x4433c4,%edx
445f7c:	e8 83 dc fb ff       	call   0x403c04
445f81:	84 c0                	test   %al,%al
445f83:	74 37                	je     0x445fbc
445f85:	8b c6                	mov    %esi,%eax
445f87:	8a 50 54             	mov    0x54(%eax),%dl
445f8a:	88 53 54             	mov    %dl,0x54(%ebx)
445f8d:	8b 50 58             	mov    0x58(%eax),%edx
445f90:	89 53 58             	mov    %edx,0x58(%ebx)
445f93:	8a 50 6c             	mov    0x6c(%eax),%dl
445f96:	88 53 6c             	mov    %dl,0x6c(%ebx)
445f99:	56                   	push   %esi
445f9a:	8d 70 44             	lea    0x44(%eax),%esi
445f9d:	8d 7b 44             	lea    0x44(%ebx),%edi
445fa0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445fa1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445fa2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445fa3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445fa4:	5e                   	pop    %esi
445fa5:	56                   	push   %esi
445fa6:	8d 70 5c             	lea    0x5c(%eax),%esi
445fa9:	8d 7b 5c             	lea    0x5c(%ebx),%edi
445fac:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445fad:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445fae:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445faf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445fb0:	5e                   	pop    %esi
445fb1:	8b 50 40             	mov    0x40(%eax),%edx
445fb4:	8b 43 40             	mov    0x40(%ebx),%eax
445fb7:	8b 08                	mov    (%eax),%ecx
445fb9:	ff 51 08             	call   *0x8(%ecx)
445fbc:	5f                   	pop    %edi
445fbd:	5e                   	pop    %esi
445fbe:	5b                   	pop    %ebx
445fbf:	c3                   	ret
445fc0:	55                   	push   %ebp
445fc1:	8b ec                	mov    %esp,%ebp
445fc3:	56                   	push   %esi
445fc4:	57                   	push   %edi
445fc5:	8b fa                	mov    %edx,%edi
445fc7:	8b f0                	mov    %eax,%esi
445fc9:	8b 45 08             	mov    0x8(%ebp),%eax
445fcc:	50                   	push   %eax
445fcd:	8b d7                	mov    %edi,%edx
445fcf:	8b 46 38             	mov    0x38(%esi),%eax
445fd2:	66 be e5 ff          	mov    $0xffe5,%si
445fd6:	e8 99 dc fb ff       	call   0x403c74
445fdb:	5f                   	pop    %edi
445fdc:	5e                   	pop    %esi
445fdd:	5d                   	pop    %ebp
445fde:	c2 04 00             	ret    $0x4
445fe1:	8d 40 00             	lea    0x0(%eax),%eax
445fe4:	53                   	push   %ebx
445fe5:	56                   	push   %esi
445fe6:	8b da                	mov    %edx,%ebx
445fe8:	8b c8                	mov    %eax,%ecx
445fea:	8b c1                	mov    %ecx,%eax
445fec:	99                   	cltd
445fed:	33 c2                	xor    %edx,%eax
445fef:	2b c2                	sub    %edx,%eax
445ff1:	8b f0                	mov    %eax,%esi
445ff3:	8b c3                	mov    %ebx,%eax
445ff5:	99                   	cltd
445ff6:	33 c2                	xor    %edx,%eax
445ff8:	2b c2                	sub    %edx,%eax
445ffa:	3b f0                	cmp    %eax,%esi
445ffc:	7d 05                	jge    0x446003
445ffe:	8b c1                	mov    %ecx,%eax
446000:	5e                   	pop    %esi
446001:	5b                   	pop    %ebx
446002:	c3                   	ret
446003:	8b c3                	mov    %ebx,%eax
446005:	5e                   	pop    %esi
446006:	5b                   	pop    %ebx
446007:	c3                   	ret
446008:	53                   	push   %ebx
446009:	56                   	push   %esi
44600a:	57                   	push   %edi
44600b:	83 c4 f0             	add    $0xfffffff0,%esp
44600e:	8b f2                	mov    %edx,%esi
446010:	8d 3c 24             	lea    (%esp),%edi
446013:	a5                   	movsl  %ds:(%esi),%es:(%edi)
446014:	a5                   	movsl  %ds:(%esi),%es:(%edi)
446015:	a5                   	movsl  %ds:(%esi),%es:(%edi)
446016:	a5                   	movsl  %ds:(%esi),%es:(%edi)
446017:	8b d8                	mov    %eax,%ebx
446019:	8b 43 0c             	mov    0xc(%ebx),%eax
44601c:	8b 14 24             	mov    (%esp),%edx
44601f:	3b c2                	cmp    %edx,%eax
446021:	7c 06                	jl     0x446029
446023:	3b 44 24 08          	cmp    0x8(%esp),%eax
446027:	7e 14                	jle    0x44603d
446029:	2b d0                	sub    %eax,%edx
44602b:	8b 4c 24 08          	mov    0x8(%esp),%ecx
44602f:	2b c8                	sub    %eax,%ecx
446031:	8b c1                	mov    %ecx,%eax
446033:	92                   	xchg   %eax,%edx
446034:	e8 ab ff ff ff       	call   0x445fe4
446039:	8b f0                	mov    %eax,%esi
44603b:	eb 02                	jmp    0x44603f
44603d:	33 f6                	xor    %esi,%esi
44603f:	8b 43 10             	mov    0x10(%ebx),%eax
446042:	8b 54 24 04          	mov    0x4(%esp),%edx
446046:	3b c2                	cmp    %edx,%eax
446048:	7c 06                	jl     0x446050
44604a:	3b 44 24 0c          	cmp    0xc(%esp),%eax
44604e:	7e 12                	jle    0x446062
446050:	2b d0                	sub    %eax,%edx
446052:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
446056:	2b c8                	sub    %eax,%ecx
446058:	8b c1                	mov    %ecx,%eax
44605a:	92                   	xchg   %eax,%edx
44605b:	e8 84 ff ff ff       	call   0x445fe4
446060:	eb 02                	jmp    0x446064
446062:	33 c0                	xor    %eax,%eax
446064:	85 f6                	test   %esi,%esi
446066:	75 04                	jne    0x44606c
446068:	85 c0                	test   %eax,%eax
44606a:	74 0f                	je     0x44607b
44606c:	f7 d8                	neg    %eax
44606e:	50                   	push   %eax
44606f:	f7 de                	neg    %esi
446071:	56                   	push   %esi
446072:	8d 43 44             	lea    0x44(%ebx),%eax
446075:	50                   	push   %eax
446076:	e8 fd 1b fc ff       	call   0x407c78
44607b:	83 c4 10             	add    $0x10,%esp
44607e:	5f                   	pop    %edi
44607f:	5e                   	pop    %esi
446080:	5b                   	pop    %ebx
446081:	c3                   	ret
446082:	8b c0                	mov    %eax,%eax
446084:	56                   	push   %esi
446085:	8b f0                	mov    %eax,%esi
446087:	8b d6                	mov    %esi,%edx
446089:	8b 46 38             	mov    0x38(%esi),%eax
44608c:	66 be db ff          	mov    $0xffdb,%si
446090:	e8 df db fb ff       	call   0x403c74
446095:	5e                   	pop    %esi
446096:	c3                   	ret
446097:	90                   	nop
446098:	56                   	push   %esi
446099:	8b f0                	mov    %eax,%esi
44609b:	8b d6                	mov    %esi,%edx
44609d:	8b 46 38             	mov    0x38(%esi),%eax
4460a0:	66 be da ff          	mov    $0xffda,%si
4460a4:	e8 cb db fb ff       	call   0x403c74
4460a9:	5e                   	pop    %esi
4460aa:	c3                   	ret
4460ab:	90                   	nop
4460ac:	55                   	push   %ebp
4460ad:	8b ec                	mov    %esp,%ebp
4460af:	33 c0                	xor    %eax,%eax
4460b1:	5d                   	pop    %ebp
4460b2:	c2 04 00             	ret    $0x4
4460b5:	8d 40 00             	lea    0x0(%eax),%eax
4460b8:	b8 04 00 00 00       	mov    $0x4,%eax
4460bd:	c3                   	ret
4460be:	8b c0                	mov    %eax,%eax
4460c0:	c3                   	ret
4460c1:	8d 40 00             	lea    0x0(%eax),%eax
4460c4:	55                   	push   %ebp
4460c5:	8b ec                	mov    %esp,%ebp
4460c7:	83 c4 f0             	add    $0xfffffff0,%esp
4460ca:	53                   	push   %ebx
4460cb:	56                   	push   %esi
4460cc:	57                   	push   %edi
4460cd:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4460d0:	8b 75 08             	mov    0x8(%ebp),%esi
4460d3:	8b fb                	mov    %ebx,%edi
4460d5:	3b 77 04             	cmp    0x4(%edi),%esi
4460d8:	75 04                	jne    0x4460de
4460da:	33 c0                	xor    %eax,%eax
4460dc:	eb 46                	jmp    0x446124
4460de:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
4460e2:	75 20                	jne    0x446104
4460e4:	8d 45 f0             	lea    -0x10(%ebp),%eax
4460e7:	50                   	push   %eax
4460e8:	56                   	push   %esi
4460e9:	e8 6a 1a fc ff       	call   0x407b58
4460ee:	ff 77 10             	push   0x10(%edi)
4460f1:	ff 77 0c             	push   0xc(%edi)
4460f4:	8d 45 f0             	lea    -0x10(%ebp),%eax
4460f7:	50                   	push   %eax
4460f8:	e8 a3 1b fc ff       	call   0x407ca0
4460fd:	85 c0                	test   %eax,%eax
4460ff:	74 03                	je     0x446104
446101:	89 77 08             	mov    %esi,0x8(%edi)
446104:	8b d3                	mov    %ebx,%edx
446106:	3b 72 08             	cmp    0x8(%edx),%esi
446109:	75 08                	jne    0x446113
44610b:	33 c0                	xor    %eax,%eax
44610d:	c6 42 14 01          	movb   $0x1,0x14(%edx)
446111:	eb 11                	jmp    0x446124
446113:	3b 32                	cmp    (%edx),%esi
446115:	75 0a                	jne    0x446121
446117:	83 c8 ff             	or     $0xffffffff,%eax
44611a:	33 c9                	xor    %ecx,%ecx
44611c:	89 4a 08             	mov    %ecx,0x8(%edx)
44611f:	eb 03                	jmp    0x446124
446121:	83 c8 ff             	or     $0xffffffff,%eax
446124:	5f                   	pop    %edi
446125:	5e                   	pop    %esi
446126:	5b                   	pop    %ebx
446127:	8b e5                	mov    %ebp,%esp
446129:	5d                   	pop    %ebp
44612a:	c2 08 00             	ret    $0x8
44612d:	8d 40 00             	lea    0x0(%eax),%eax
446130:	55                   	push   %ebp
446131:	8b ec                	mov    %esp,%ebp
446133:	83 c4 c4             	add    $0xffffffc4,%esp
446136:	53                   	push   %ebx
446137:	56                   	push   %esi
446138:	57                   	push   %edi
446139:	8b d8                	mov    %eax,%ebx
44613b:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
44613f:	8b 45 08             	mov    0x8(%ebp),%eax
446142:	83 c0 f7             	add    $0xfffffff7,%eax
446145:	e8 1e 04 00 00       	call   0x446568
44614a:	8b f0                	mov    %eax,%esi
44614c:	89 75 ec             	mov    %esi,-0x14(%ebp)
44614f:	6a 04                	push   $0x4
446151:	56                   	push   %esi
446152:	e8 e1 19 fc ff       	call   0x407b38
446157:	8b 15 f4 6f 6a 00    	mov    0x6a6ff4,%edx
44615d:	8b 12                	mov    (%edx),%edx
44615f:	3b 42 30             	cmp    0x30(%edx),%eax
446162:	74 27                	je     0x44618b
446164:	8b 45 ec             	mov    -0x14(%ebp),%eax
446167:	e8 4c f5 ff ff       	call   0x4456b8
44616c:	8b f0                	mov    %eax,%esi
44616e:	85 f6                	test   %esi,%esi
446170:	0f 84 48 01 00 00    	je     0x4462be
446176:	eb 02                	jmp    0x44617a
446178:	8b f0                	mov    %eax,%esi
44617a:	8b 46 30             	mov    0x30(%esi),%eax
44617d:	85 c0                	test   %eax,%eax
44617f:	75 f7                	jne    0x446178
446181:	8b c6                	mov    %esi,%eax
446183:	e8 cc 8d 00 00       	call   0x44ef54
446188:	89 45 ec             	mov    %eax,-0x14(%ebp)
44618b:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
44618f:	0f 84 29 01 00 00    	je     0x4462be
446195:	8b f3                	mov    %ebx,%esi
446197:	eb 02                	jmp    0x44619b
446199:	8b f0                	mov    %eax,%esi
44619b:	8b 46 30             	mov    0x30(%esi),%eax
44619e:	85 c0                	test   %eax,%eax
4461a0:	75 f7                	jne    0x446199
4461a2:	8b c6                	mov    %esi,%eax
4461a4:	e8 ab 8d 00 00       	call   0x44ef54
4461a9:	8b f8                	mov    %eax,%edi
4461ab:	89 7d e8             	mov    %edi,-0x18(%ebp)
4461ae:	3b 7d ec             	cmp    -0x14(%ebp),%edi
4461b1:	0f 84 07 01 00 00    	je     0x4462be
4461b7:	8b 45 08             	mov    0x8(%ebp),%eax
4461ba:	8b 40 f0             	mov    -0x10(%eax),%eax
4461bd:	8b 40 30             	mov    0x30(%eax),%eax
4461c0:	85 c0                	test   %eax,%eax
4461c2:	74 1c                	je     0x4461e0
4461c4:	8b 55 08             	mov    0x8(%ebp),%edx
4461c7:	8b f0                	mov    %eax,%esi
4461c9:	eb 02                	jmp    0x4461cd
4461cb:	8b f0                	mov    %eax,%esi
4461cd:	8b 46 30             	mov    0x30(%esi),%eax
4461d0:	85 c0                	test   %eax,%eax
4461d2:	75 f7                	jne    0x4461cb
4461d4:	8b c6                	mov    %esi,%eax
4461d6:	e8 79 8d 00 00       	call   0x44ef54
4461db:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4461de:	eb 2a                	jmp    0x44620a
4461e0:	8b 45 08             	mov    0x8(%ebp),%eax
4461e3:	8b 40 f0             	mov    -0x10(%eax),%eax
4461e6:	8b 15 e8 45 44 00    	mov    0x4445e8,%edx
4461ec:	e8 13 da fb ff       	call   0x403c04
4461f1:	84 c0                	test   %al,%al
4461f3:	74 10                	je     0x446205
4461f5:	8b 45 08             	mov    0x8(%ebp),%eax
4461f8:	8b 40 f0             	mov    -0x10(%eax),%eax
4461fb:	e8 54 8d 00 00       	call   0x44ef54
446200:	89 45 e4             	mov    %eax,-0x1c(%ebp)
446203:	eb 05                	jmp    0x44620a
446205:	33 c0                	xor    %eax,%eax
446207:	89 45 e4             	mov    %eax,-0x1c(%ebp)
44620a:	c6 45 f8 00          	movb   $0x0,-0x8(%ebp)
44620e:	8b 45 08             	mov    0x8(%ebp),%eax
446211:	8b 50 f7             	mov    -0x9(%eax),%edx
446214:	89 55 f0             	mov    %edx,-0x10(%ebp)
446217:	8b 50 fb             	mov    -0x5(%eax),%edx
44621a:	89 55 f4             	mov    %edx,-0xc(%ebp)
44621d:	8d 45 e4             	lea    -0x1c(%ebp),%eax
446220:	50                   	push   %eax
446221:	68 c4 60 44 00       	push   $0x4460c4
446226:	e8 9d 0f fc ff       	call   0x4071c8
44622b:	50                   	push   %eax
44622c:	e8 4f 17 fc ff       	call   0x407980
446231:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
446235:	0f 84 83 00 00 00    	je     0x4462be
44623b:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44623e:	50                   	push   %eax
44623f:	8b 45 ec             	mov    -0x14(%ebp),%eax