42ef5f:	e8 5c ff ff ff       	call   0x42eec0
42ef64:	83 c4 08             	add    $0x8,%esp
42ef67:	84 c0                	test   %al,%al
42ef69:	74 0c                	je     0x42ef77
42ef6b:	85 db                	test   %ebx,%ebx
42ef6d:	74 02                	je     0x42ef71
42ef6f:	89 3b                	mov    %edi,(%ebx)
42ef71:	5f                   	pop    %edi
42ef72:	8b c6                	mov    %esi,%eax
42ef74:	5e                   	pop    %esi
42ef75:	5b                   	pop    %ebx
42ef76:	c3                   	ret
42ef77:	5f                   	pop    %edi
42ef78:	5e                   	pop    %esi
42ef79:	33 c0                	xor    %eax,%eax
42ef7b:	5b                   	pop    %ebx
42ef7c:	c3                   	ret
42ef7d:	cc                   	int3
42ef7e:	cc                   	int3
42ef7f:	cc                   	int3
42ef80:	8b 47 3c             	mov    0x3c(%edi),%eax
42ef83:	53                   	push   %ebx
42ef84:	55                   	push   %ebp
42ef85:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
42ef89:	03 c7                	add    %edi,%eax
42ef8b:	80 7c 24 14 00       	cmpb   $0x0,0x14(%esp)
42ef90:	56                   	push   %esi
42ef91:	74 07                	je     0x42ef9a
42ef93:	05 88 00 00 00       	add    $0x88,%eax
42ef98:	eb 03                	jmp    0x42ef9d
42ef9a:	83 c0 78             	add    $0x78,%eax
42ef9d:	85 c0                	test   %eax,%eax
42ef9f:	74 53                	je     0x42eff4
42efa1:	8b 58 04             	mov    0x4(%eax),%ebx
42efa4:	85 db                	test   %ebx,%ebx
42efa6:	74 4c                	je     0x42eff4
42efa8:	8b 30                	mov    (%eax),%esi
42efaa:	03 f7                	add    %edi,%esi
42efac:	6a 28                	push   $0x28
42efae:	56                   	push   %esi
42efaf:	e8 0c ff ff ff       	call   0x42eec0
42efb4:	83 c4 08             	add    $0x8,%esp
42efb7:	84 c0                	test   %al,%al
42efb9:	74 39                	je     0x42eff4
42efbb:	85 ed                	test   %ebp,%ebp
42efbd:	74 03                	je     0x42efc2
42efbf:	89 5d 00             	mov    %ebx,0x0(%ebp)
42efc2:	85 f6                	test   %esi,%esi
42efc4:	74 6a                	je     0x42f030
42efc6:	8b 46 1c             	mov    0x1c(%esi),%eax
42efc9:	8b 5e 24             	mov    0x24(%esi),%ebx
42efcc:	8b 6e 20             	mov    0x20(%esi),%ebp
42efcf:	8b 4e 14             	mov    0x14(%esi),%ecx
42efd2:	03 c7                	add    %edi,%eax
42efd4:	03 df                	add    %edi,%ebx
42efd6:	03 ef                	add    %edi,%ebp
42efd8:	85 c9                	test   %ecx,%ecx
42efda:	74 20                	je     0x42effc
42efdc:	03 c9                	add    %ecx,%ecx
42efde:	03 c9                	add    %ecx,%ecx
42efe0:	51                   	push   %ecx
42efe1:	50                   	push   %eax
42efe2:	e8 d9 fe ff ff       	call   0x42eec0
42efe7:	83 c4 08             	add    $0x8,%esp
42efea:	84 c0                	test   %al,%al
42efec:	75 0e                	jne    0x42effc
42efee:	5e                   	pop    %esi
42efef:	5d                   	pop    %ebp
42eff0:	33 c0                	xor    %eax,%eax
42eff2:	5b                   	pop    %ebx
42eff3:	c3                   	ret
42eff4:	33 f6                	xor    %esi,%esi
42eff6:	8b c6                	mov    %esi,%eax
42eff8:	5e                   	pop    %esi
42eff9:	5d                   	pop    %ebp
42effa:	5b                   	pop    %ebx
42effb:	c3                   	ret
42effc:	8b 46 18             	mov    0x18(%esi),%eax
42efff:	85 c0                	test   %eax,%eax
42f001:	74 2d                	je     0x42f030
42f003:	80 7c 24 14 00       	cmpb   $0x0,0x14(%esp)
42f008:	74 26                	je     0x42f030
42f00a:	8d 14 00             	lea    (%eax,%eax,1),%edx
42f00d:	52                   	push   %edx
42f00e:	53                   	push   %ebx
42f00f:	e8 ac fe ff ff       	call   0x42eec0
42f014:	83 c4 08             	add    $0x8,%esp
42f017:	84 c0                	test   %al,%al
42f019:	74 d3                	je     0x42efee
42f01b:	8b 46 18             	mov    0x18(%esi),%eax
42f01e:	03 c0                	add    %eax,%eax
42f020:	03 c0                	add    %eax,%eax
42f022:	50                   	push   %eax
42f023:	55                   	push   %ebp
42f024:	e8 97 fe ff ff       	call   0x42eec0
42f029:	83 c4 08             	add    $0x8,%esp
42f02c:	84 c0                	test   %al,%al
42f02e:	74 be                	je     0x42efee
42f030:	8b c6                	mov    %esi,%eax
42f032:	5e                   	pop    %esi
42f033:	5d                   	pop    %ebp
42f034:	5b                   	pop    %ebx
42f035:	c3                   	ret
42f036:	cc                   	int3
42f037:	cc                   	int3
42f038:	cc                   	int3
42f039:	cc                   	int3
42f03a:	cc                   	int3
42f03b:	cc                   	int3
42f03c:	cc                   	int3
42f03d:	cc                   	int3
42f03e:	cc                   	int3
42f03f:	cc                   	int3
42f040:	83 ec 0c             	sub    $0xc,%esp
42f043:	53                   	push   %ebx
42f044:	8b 5c 24 18          	mov    0x18(%esp),%ebx
42f048:	57                   	push   %edi
42f049:	8b f8                	mov    %eax,%edi
42f04b:	8b 44 24 24          	mov    0x24(%esp),%eax
42f04f:	85 c0                	test   %eax,%eax
42f051:	74 06                	je     0x42f059
42f053:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
42f059:	85 ff                	test   %edi,%edi
42f05b:	0f 84 ea 00 00 00    	je     0x42f14b
42f061:	83 fb ff             	cmp    $0xffffffff,%ebx
42f064:	75 15                	jne    0x42f07b
42f066:	8b 44 24 18          	mov    0x18(%esp),%eax
42f06a:	85 c0                	test   %eax,%eax
42f06c:	0f 84 d9 00 00 00    	je     0x42f14b
42f072:	80 38 00             	cmpb   $0x0,(%eax)
42f075:	0f 84 d0 00 00 00    	je     0x42f14b
42f07b:	8b 44 24 20          	mov    0x20(%esp),%eax
42f07f:	55                   	push   %ebp
42f080:	56                   	push   %esi
42f081:	50                   	push   %eax
42f082:	8d 4c 24 14          	lea    0x14(%esp),%ecx
42f086:	6a 01                	push   $0x1
42f088:	51                   	push   %ecx
42f089:	e8 f2 fe ff ff       	call   0x42ef80
42f08e:	8b f0                	mov    %eax,%esi
42f090:	83 c4 0c             	add    $0xc,%esp
42f093:	85 f6                	test   %esi,%esi
42f095:	0f 84 a6 00 00 00    	je     0x42f141
42f09b:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
42f0a0:	0f 84 9b 00 00 00    	je     0x42f141
42f0a6:	8b 56 18             	mov    0x18(%esi),%edx
42f0a9:	85 d2                	test   %edx,%edx
42f0ab:	0f 84 90 00 00 00    	je     0x42f141
42f0b1:	8b 6e 20             	mov    0x20(%esi),%ebp
42f0b4:	85 ed                	test   %ebp,%ebp
42f0b6:	0f 84 85 00 00 00    	je     0x42f141
42f0bc:	8b 46 1c             	mov    0x1c(%esi),%eax
42f0bf:	8b 4e 24             	mov    0x24(%esi),%ecx
42f0c2:	03 c7                	add    %edi,%eax
42f0c4:	03 cf                	add    %edi,%ecx
42f0c6:	03 ef                	add    %edi,%ebp
42f0c8:	89 44 24 18          	mov    %eax,0x18(%esp)
42f0cc:	89 4c 24 14          	mov    %ecx,0x14(%esp)
42f0d0:	83 fb ff             	cmp    $0xffffffff,%ebx
42f0d3:	73 07                	jae    0x42f0dc
42f0d5:	2b 5e 10             	sub    0x10(%esi),%ebx
42f0d8:	8b cb                	mov    %ebx,%ecx
42f0da:	eb 3f                	jmp    0x42f11b
42f0dc:	33 db                	xor    %ebx,%ebx
42f0de:	85 d2                	test   %edx,%edx
42f0e0:	74 5f                	je     0x42f141
42f0e2:	8b 44 9d 00          	mov    0x0(%ebp,%ebx,4),%eax
42f0e6:	8b 54 24 20          	mov    0x20(%esp),%edx
42f0ea:	03 c7                	add    %edi,%eax
42f0ec:	50                   	push   %eax
42f0ed:	52                   	push   %edx
42f0ee:	e8 5a 43 00 00       	call   0x43344d
42f0f3:	83 c4 08             	add    $0x8,%esp
42f0f6:	85 c0                	test   %eax,%eax
42f0f8:	0f 94 c0             	sete   %al
42f0fb:	84 c0                	test   %al,%al
42f0fd:	75 10                	jne    0x42f10f
42f0ff:	43                   	inc    %ebx
42f100:	3b 5e 18             	cmp    0x18(%esi),%ebx
42f103:	72 dd                	jb     0x42f0e2
42f105:	5e                   	pop    %esi
42f106:	5d                   	pop    %ebp
42f107:	5f                   	pop    %edi
42f108:	33 c0                	xor    %eax,%eax
42f10a:	5b                   	pop    %ebx
42f10b:	83 c4 0c             	add    $0xc,%esp
42f10e:	c3                   	ret
42f10f:	8b 44 24 14          	mov    0x14(%esp),%eax
42f113:	0f b7 0c 58          	movzwl (%eax,%ebx,2),%ecx
42f117:	8b 44 24 18          	mov    0x18(%esp),%eax
42f11b:	3b 4e 14             	cmp    0x14(%esi),%ecx
42f11e:	73 21                	jae    0x42f141
42f120:	8b 04 88             	mov    (%eax,%ecx,4),%eax
42f123:	03 c7                	add    %edi,%eax
42f125:	3b c7                	cmp    %edi,%eax
42f127:	74 18                	je     0x42f141
42f129:	3b c6                	cmp    %esi,%eax
42f12b:	72 16                	jb     0x42f143
42f12d:	8b 4c 24 10          	mov    0x10(%esp),%ecx
42f131:	03 ce                	add    %esi,%ecx
42f133:	3b c1                	cmp    %ecx,%eax
42f135:	73 0c                	jae    0x42f143
42f137:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
42f13b:	85 c9                	test   %ecx,%ecx
42f13d:	74 02                	je     0x42f141
42f13f:	89 01                	mov    %eax,(%ecx)
42f141:	33 c0                	xor    %eax,%eax
42f143:	5e                   	pop    %esi
42f144:	5d                   	pop    %ebp
42f145:	5f                   	pop    %edi
42f146:	5b                   	pop    %ebx
42f147:	83 c4 0c             	add    $0xc,%esp
42f14a:	c3                   	ret
42f14b:	5f                   	pop    %edi
42f14c:	33 c0                	xor    %eax,%eax
42f14e:	5b                   	pop    %ebx
42f14f:	83 c4 0c             	add    $0xc,%esp
42f152:	c3                   	ret
42f153:	cc                   	int3
42f154:	cc                   	int3
42f155:	cc                   	int3
42f156:	cc                   	int3
42f157:	cc                   	int3
42f158:	cc                   	int3
42f159:	cc                   	int3
42f15a:	cc                   	int3
42f15b:	cc                   	int3
42f15c:	cc                   	int3
42f15d:	cc                   	int3
42f15e:	cc                   	int3
42f15f:	cc                   	int3
42f160:	8b 4c 24 04          	mov    0x4(%esp),%ecx
42f164:	8b 41 3c             	mov    0x3c(%ecx),%eax
42f167:	03 c1                	add    %ecx,%eax
42f169:	83 c0 78             	add    $0x78,%eax
42f16c:	56                   	push   %esi
42f16d:	57                   	push   %edi
42f16e:	74 29                	je     0x42f199
42f170:	8b 78 04             	mov    0x4(%eax),%edi
42f173:	85 ff                	test   %edi,%edi
42f175:	74 22                	je     0x42f199
42f177:	8b 30                	mov    (%eax),%esi
42f179:	03 f1                	add    %ecx,%esi
42f17b:	6a 28                	push   $0x28
42f17d:	56                   	push   %esi
42f17e:	e8 3d fd ff ff       	call   0x42eec0
42f183:	83 c4 08             	add    $0x8,%esp
42f186:	84 c0                	test   %al,%al
42f188:	74 0f                	je     0x42f199
42f18a:	8b 44 24 10          	mov    0x10(%esp),%eax
42f18e:	85 c0                	test   %eax,%eax
42f190:	74 02                	je     0x42f194
42f192:	89 38                	mov    %edi,(%eax)
42f194:	5f                   	pop    %edi
42f195:	8b c6                	mov    %esi,%eax
42f197:	5e                   	pop    %esi
42f198:	c3                   	ret
42f199:	5f                   	pop    %edi
42f19a:	33 c0                	xor    %eax,%eax
42f19c:	5e                   	pop    %esi
42f19d:	c3                   	ret
42f19e:	cc                   	int3
42f19f:	cc                   	int3
42f1a0:	8b 44 24 0c          	mov    0xc(%esp),%eax
42f1a4:	8b 4c 24 08          	mov    0x8(%esp),%ecx
42f1a8:	57                   	push   %edi
42f1a9:	8b 7c 24 08          	mov    0x8(%esp),%edi
42f1ad:	6a 00                	push   $0x0
42f1af:	50                   	push   %eax
42f1b0:	51                   	push   %ecx
42f1b1:	e8 ca fd ff ff       	call   0x42ef80
42f1b6:	83 c4 0c             	add    $0xc,%esp
42f1b9:	5f                   	pop    %edi
42f1ba:	c3                   	ret
42f1bb:	cc                   	int3
42f1bc:	cc                   	int3
42f1bd:	cc                   	int3
42f1be:	cc                   	int3
42f1bf:	cc                   	int3
42f1c0:	8b 44 24 08          	mov    0x8(%esp),%eax
42f1c4:	6a 00                	push   $0x0
42f1c6:	6a 00                	push   $0x0
42f1c8:	6a ff                	push   $0xffffffff
42f1ca:	50                   	push   %eax
42f1cb:	8b 44 24 14          	mov    0x14(%esp),%eax
42f1cf:	e8 6c fe ff ff       	call   0x42f040
42f1d4:	83 c4 10             	add    $0x10,%esp
42f1d7:	c3                   	ret
42f1d8:	cc                   	int3
42f1d9:	cc                   	int3
42f1da:	cc                   	int3
42f1db:	cc                   	int3
42f1dc:	cc                   	int3
42f1dd:	cc                   	int3
42f1de:	cc                   	int3
42f1df:	cc                   	int3
42f1e0:	83 ec 08             	sub    $0x8,%esp
42f1e3:	6a ff                	push   $0xffffffff
42f1e5:	e8 46 60 fd ff       	call   0x405230
42f1ea:	83 c4 04             	add    $0x4,%esp
42f1ed:	84 c0                	test   %al,%al
42f1ef:	75 08                	jne    0x42f1f9
42f1f1:	33 c0                	xor    %eax,%eax
42f1f3:	33 d2                	xor    %edx,%edx
42f1f5:	83 c4 08             	add    $0x8,%esp
42f1f8:	c3                   	ret
42f1f9:	65 a1 60 00 00 00    	mov    %gs:0x60,%eax
42f1ff:	89 04 24             	mov    %eax,(%esp)
42f202:	65 a1 64 00 00 00    	mov    %gs:0x64,%eax
42f208:	89 44 24 04          	mov    %eax,0x4(%esp)
42f20c:	8b 04 24             	mov    (%esp),%eax
42f20f:	33 d2                	xor    %edx,%edx
42f211:	83 c4 08             	add    $0x8,%esp
42f214:	c3                   	ret
42f215:	cc                   	int3
42f216:	cc                   	int3
42f217:	cc                   	int3
42f218:	cc                   	int3
42f219:	cc                   	int3
42f21a:	cc                   	int3
42f21b:	cc                   	int3
42f21c:	cc                   	int3
42f21d:	cc                   	int3
42f21e:	cc                   	int3
42f21f:	cc                   	int3
42f220:	51                   	push   %ecx
42f221:	53                   	push   %ebx
42f222:	8b 5c 24 14          	mov    0x14(%esp),%ebx
42f226:	56                   	push   %esi
42f227:	57                   	push   %edi
42f228:	ff 15 c0 34 47 00    	call   *0x4734c0
42f22e:	50                   	push   %eax
42f22f:	6a 00                	push   $0x0
42f231:	68 10 04 00 00       	push   $0x410
42f236:	ff 15 30 34 47 00    	call   *0x473430
42f23c:	8b 4c 24 20          	mov    0x20(%esp),%ecx
42f240:	8b 54 24 18          	mov    0x18(%esp),%edx
42f244:	8b f0                	mov    %eax,%esi
42f246:	8d 44 24 0c          	lea    0xc(%esp),%eax
42f24a:	50                   	push   %eax
42f24b:	8b 44 24 18          	mov    0x18(%esp),%eax
42f24f:	53                   	push   %ebx
42f250:	51                   	push   %ecx
42f251:	52                   	push   %edx
42f252:	50                   	push   %eax
42f253:	56                   	push   %esi
42f254:	e8 f7 fb ff ff       	call   0x42ee50
42f259:	83 c4 18             	add    $0x18,%esp
42f25c:	8b f8                	mov    %eax,%edi
42f25e:	83 fe ff             	cmp    $0xffffffff,%esi