438d72:	e8 19 ba fe ff       	call   0x424790
438d77:	85 c0                	test   %eax,%eax
438d79:	75 0a                	jne    0x438d85
438d7b:	6a ff                	push   $0xffffffff
438d7d:	8d 4e 08             	lea    0x8(%esi),%ecx
438d80:	e8 5b bd fe ff       	call   0x424ae0
438d85:	8b 46 0c             	mov    0xc(%esi),%eax
438d88:	85 c0                	test   %eax,%eax
438d8a:	74 52                	je     0x438dde
438d8c:	8d 64 24 00          	lea    0x0(%esp),%esp
438d90:	8b 50 04             	mov    0x4(%eax),%edx
438d93:	8b 08                	mov    (%eax),%ecx
438d95:	85 d2                	test   %edx,%edx
438d97:	74 04                	je     0x438d9d
438d99:	89 0a                	mov    %ecx,(%edx)
438d9b:	eb 03                	jmp    0x438da0
438d9d:	89 4e 10             	mov    %ecx,0x10(%esi)
438da0:	8b 10                	mov    (%eax),%edx
438da2:	8b 48 04             	mov    0x4(%eax),%ecx
438da5:	85 d2                	test   %edx,%edx
438da7:	74 05                	je     0x438dae
438da9:	89 4a 04             	mov    %ecx,0x4(%edx)
438dac:	eb 03                	jmp    0x438db1
438dae:	89 4e 0c             	mov    %ecx,0xc(%esi)
438db1:	50                   	push   %eax
438db2:	6a 00                	push   $0x0
438db4:	ff 35 00 12 45 00    	push   0x451200
438dba:	c7 00 ff ff ff ff    	movl   $0xffffffff,(%eax)
438dc0:	c7 40 04 ff ff ff ff 	movl   $0xffffffff,0x4(%eax)
438dc7:	ff 15 18 21 45 00    	call   *0x452118
438dcd:	85 c0                	test   %eax,%eax
438dcf:	75 06                	jne    0x438dd7
438dd1:	ff 15 6c 20 45 00    	call   *0x45206c
438dd7:	8b 46 0c             	mov    0xc(%esi),%eax
438dda:	85 c0                	test   %eax,%eax
438ddc:	75 b2                	jne    0x438d90
438dde:	6a 01                	push   $0x1
438de0:	8d 4e 08             	lea    0x8(%esi),%ecx
438de3:	e8 58 c0 fd ff       	call   0x414e40
438de8:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
438dec:	c7 06 54 12 40 00    	movl   $0x401254,(%esi)
438df2:	74 19                	je     0x438e0d
438df4:	56                   	push   %esi
438df5:	6a 00                	push   $0x0
438df7:	ff 35 00 12 45 00    	push   0x451200
438dfd:	ff 15 18 21 45 00    	call   *0x452118
438e03:	85 c0                	test   %eax,%eax
438e05:	75 06                	jne    0x438e0d
438e07:	ff 15 6c 20 45 00    	call   *0x45206c
438e0d:	5f                   	pop    %edi
438e0e:	8b c6                	mov    %esi,%eax
438e10:	5e                   	pop    %esi
438e11:	5d                   	pop    %ebp
438e12:	c2 04 00             	ret    $0x4
438e15:	cc                   	int3
438e16:	cc                   	int3
438e17:	cc                   	int3
438e18:	cc                   	int3
438e19:	cc                   	int3
438e1a:	cc                   	int3
438e1b:	cc                   	int3
438e1c:	cc                   	int3
438e1d:	cc                   	int3
438e1e:	cc                   	int3
438e1f:	cc                   	int3
438e20:	8b ff                	mov    %edi,%edi
438e22:	55                   	push   %ebp
438e23:	8b ec                	mov    %esp,%ebp
438e25:	8b 4d 08             	mov    0x8(%ebp),%ecx
438e28:	ba 02 fc ff ff       	mov    $0xfffffc02,%edx
438e2d:	e8 ee f9 fe ff       	call   0x428820
438e32:	5d                   	pop    %ebp
438e33:	c2 04 00             	ret    $0x4
438e36:	cc                   	int3
438e37:	cc                   	int3
438e38:	cc                   	int3
438e39:	cc                   	int3
438e3a:	cc                   	int3
438e3b:	cc                   	int3
438e3c:	cc                   	int3
438e3d:	cc                   	int3
438e3e:	cc                   	int3
438e3f:	cc                   	int3
438e40:	8b ff                	mov    %edi,%edi
438e42:	55                   	push   %ebp
438e43:	8b ec                	mov    %esp,%ebp
438e45:	53                   	push   %ebx
438e46:	8b 59 0c             	mov    0xc(%ecx),%ebx
438e49:	56                   	push   %esi
438e4a:	57                   	push   %edi
438e4b:	85 db                	test   %ebx,%ebx
438e4d:	74 75                	je     0x438ec4
438e4f:	8b 4d 08             	mov    0x8(%ebp),%ecx
438e52:	8d 7b 08             	lea    0x8(%ebx),%edi
438e55:	85 ff                	test   %edi,%edi
438e57:	75 04                	jne    0x438e5d
438e59:	33 c0                	xor    %eax,%eax
438e5b:	eb 17                	jmp    0x438e74
438e5d:	8b c7                	mov    %edi,%eax
438e5f:	8d 50 02             	lea    0x2(%eax),%edx
438e62:	66 8b 08             	mov    (%eax),%cx
438e65:	83 c0 02             	add    $0x2,%eax
438e68:	66 85 c9             	test   %cx,%cx
438e6b:	75 f5                	jne    0x438e62
438e6d:	8b 4d 08             	mov    0x8(%ebp),%ecx
438e70:	2b c2                	sub    %edx,%eax
438e72:	d1 f8                	sar    $1,%eax
438e74:	85 c9                	test   %ecx,%ecx
438e76:	75 04                	jne    0x438e7c
438e78:	33 d2                	xor    %edx,%edx
438e7a:	eb 1b                	jmp    0x438e97
438e7c:	8b d1                	mov    %ecx,%edx
438e7e:	8d 72 02             	lea    0x2(%edx),%esi
438e81:	66 8b 0a             	mov    (%edx),%cx
438e84:	83 c2 02             	add    $0x2,%edx
438e87:	66 85 c9             	test   %cx,%cx
438e8a:	75 f5                	jne    0x438e81
438e8c:	2b d6                	sub    %esi,%edx
438e8e:	d1 fa                	sar    $1,%edx
438e90:	3b c2                	cmp    %edx,%eax
438e92:	72 2b                	jb     0x438ebf
438e94:	8b 4d 08             	mov    0x8(%ebp),%ecx
438e97:	3b c2                	cmp    %edx,%eax
438e99:	77 24                	ja     0x438ebf
438e9b:	33 f6                	xor    %esi,%esi
438e9d:	85 c0                	test   %eax,%eax
438e9f:	74 15                	je     0x438eb6
438ea1:	8b d1                	mov    %ecx,%edx
438ea3:	2b f9                	sub    %ecx,%edi
438ea5:	66 8b 0c 17          	mov    (%edi,%edx,1),%cx
438ea9:	66 3b 0a             	cmp    (%edx),%cx
438eac:	75 11                	jne    0x438ebf
438eae:	46                   	inc    %esi
438eaf:	83 c2 02             	add    $0x2,%edx
438eb2:	3b f0                	cmp    %eax,%esi
438eb4:	72 ef                	jb     0x438ea5
438eb6:	5f                   	pop    %edi
438eb7:	5e                   	pop    %esi
438eb8:	8b c3                	mov    %ebx,%eax
438eba:	5b                   	pop    %ebx
438ebb:	5d                   	pop    %ebp
438ebc:	c2 04 00             	ret    $0x4
438ebf:	8b 5b 04             	mov    0x4(%ebx),%ebx
438ec2:	eb 87                	jmp    0x438e4b
438ec4:	5f                   	pop    %edi
438ec5:	5e                   	pop    %esi
438ec6:	33 c0                	xor    %eax,%eax
438ec8:	5b                   	pop    %ebx
438ec9:	5d                   	pop    %ebp
438eca:	c2 04 00             	ret    $0x4
438ecd:	cc                   	int3
438ece:	cc                   	int3
438ecf:	cc                   	int3
438ed0:	8b ff                	mov    %edi,%edi
438ed2:	55                   	push   %ebp
438ed3:	8b ec                	mov    %esp,%ebp
438ed5:	81 ec 38 0a 00 00    	sub    $0xa38,%esp
438edb:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
438ee0:	33 c5                	xor    %ebp,%eax
438ee2:	89 45 fc             	mov    %eax,-0x4(%ebp)
438ee5:	8b 45 0c             	mov    0xc(%ebp),%eax
438ee8:	8b 55 08             	mov    0x8(%ebp),%edx
438eeb:	53                   	push   %ebx
438eec:	8b d9                	mov    %ecx,%ebx
438eee:	89 85 d0 f5 ff ff    	mov    %eax,-0xa30(%ebp)
438ef4:	56                   	push   %esi
438ef5:	57                   	push   %edi
438ef6:	8d 8d ec fb ff ff    	lea    -0x414(%ebp),%ecx
438efc:	8b 03                	mov    (%ebx),%eax
438efe:	51                   	push   %ecx
438eff:	52                   	push   %edx
438f00:	8b 70 1c             	mov    0x1c(%eax),%esi
438f03:	8b ce                	mov    %esi,%ecx
438f05:	ff 15 84 23 45 00    	call   *0x452384
438f0b:	8b cb                	mov    %ebx,%ecx
438f0d:	ff d6                	call   *%esi
438f0f:	8b f0                	mov    %eax,%esi
438f11:	85 f6                	test   %esi,%esi
438f13:	0f 88 35 01 00 00    	js     0x43904e
438f19:	8b 33                	mov    (%ebx),%esi
438f1b:	8d 85 dc f7 ff ff    	lea    -0x824(%ebp),%eax
438f21:	50                   	push   %eax
438f22:	8d 85 d4 f5 ff ff    	lea    -0xa2c(%ebp),%eax
438f28:	50                   	push   %eax
438f29:	8b 76 20             	mov    0x20(%esi),%esi
438f2c:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
438f32:	50                   	push   %eax
438f33:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
438f39:	8b ce                	mov    %esi,%ecx
438f3b:	50                   	push   %eax
438f3c:	ff 15 84 23 45 00    	call   *0x452384
438f42:	8b cb                	mov    %ebx,%ecx
438f44:	ff d6                	call   *%esi
438f46:	8b f0                	mov    %eax,%esi
438f48:	85 f6                	test   %esi,%esi
438f4a:	0f 88 fe 00 00 00    	js     0x43904e
438f50:	8d 4b 08             	lea    0x8(%ebx),%ecx
438f53:	e8 38 b8 fe ff       	call   0x424790
438f58:	85 c0                	test   %eax,%eax
438f5a:	75 0a                	jne    0x438f66
438f5c:	6a ff                	push   $0xffffffff
438f5e:	8d 4b 08             	lea    0x8(%ebx),%ecx
438f61:	e8 7a bb fe ff       	call   0x424ae0
438f66:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
438f6c:	8b cb                	mov    %ebx,%ecx
438f6e:	50                   	push   %eax
438f6f:	e8 cc fe ff ff       	call   0x438e40
438f74:	89 85 cc f5 ff ff    	mov    %eax,-0xa34(%ebp)
438f7a:	85 c0                	test   %eax,%eax
438f7c:	74 59                	je     0x438fd7
438f7e:	8b b0 10 02 00 00    	mov    0x210(%eax),%esi
438f84:	e8 77 44 ff ff       	call   0x42d400
438f89:	2b c6                	sub    %esi,%eax
438f8b:	79 4a                	jns    0x438fd7
438f8d:	8b 85 cc f5 ff ff    	mov    -0xa34(%ebp),%eax
438f93:	05 14 02 00 00       	add    $0x214,%eax
438f98:	66 83 38 00          	cmpw   $0x0,(%eax)
438f9c:	74 39                	je     0x438fd7
438f9e:	51                   	push   %ecx
438f9f:	50                   	push   %eax
438fa0:	51                   	push   %ecx
438fa1:	8b 8d d0 f5 ff ff    	mov    -0xa30(%ebp),%ecx
438fa7:	ba 04 01 00 00       	mov    $0x104,%edx
438fac:	e8 ff c2 fd ff       	call   0x4152b0
438fb1:	8b c8                	mov    %eax,%ecx
438fb3:	e8 28 fd fe ff       	call   0x428ce0
438fb8:	6a 01                	push   $0x1
438fba:	8d 4b 08             	lea    0x8(%ebx),%ecx
438fbd:	e8 7e be fd ff       	call   0x414e40
438fc2:	5f                   	pop    %edi
438fc3:	5e                   	pop    %esi
438fc4:	33 c0                	xor    %eax,%eax
438fc6:	5b                   	pop    %ebx
438fc7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
438fca:	33 cd                	xor    %ebp,%ecx
438fcc:	e8 7f 3f 01 00       	call   0x44cf50
438fd1:	8b e5                	mov    %ebp,%esp
438fd3:	5d                   	pop    %ebp
438fd4:	c2 08 00             	ret    $0x8
438fd7:	6a 01                	push   $0x1
438fd9:	8d 4b 08             	lea    0x8(%ebx),%ecx
438fdc:	e8 5f be fd ff       	call   0x414e40
438fe1:	68 04 01 00 00       	push   $0x104
438fe6:	8d 85 e4 f9 ff ff    	lea    -0x61c(%ebp),%eax
438fec:	50                   	push   %eax
438fed:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
438ff3:	50                   	push   %eax
438ff4:	ff 15 d0 20 45 00    	call   *0x4520d0
438ffa:	85 c0                	test   %eax,%eax
438ffc:	0f 85 9d 00 00 00    	jne    0x43909f
439002:	ff 15 6c 20 45 00    	call   *0x45206c
439008:	83 f8 7b             	cmp    $0x7b,%eax
43900b:	75 74                	jne    0x439081
43900d:	e8 de 4c 00 00       	call   0x43dcf0
439012:	83 c0 10             	add    $0x10,%eax
439015:	74 0a                	je     0x439021
439017:	e8 d4 4c 00 00       	call   0x43dcf0
43901c:	83 c0 14             	add    $0x14,%eax
43901f:	eb 02                	jmp    0x439023
439021:	33 c0                	xor    %eax,%eax
439023:	81 3d 30 1a 45 00 01 	cmpl   $0xfffffc01,0x451a30
43902a:	fc ff ff
43902d:	c7 00 c8 28 41 00    	movl   $0x4128c8,(%eax)
439033:	c7 40 04 a1 01 00 00 	movl   $0x1a1,0x4(%eax)
43903a:	c7 40 08 01 fc ff ff 	movl   $0xfffffc01,0x8(%eax)
439041:	75 06                	jne    0x439049
439043:	ff 15 58 20 45 00    	call   *0x452058
439049:	be 01 fc ff ff       	mov    $0xfffffc01,%esi
43904e:	51                   	push   %ecx
43904f:	68 8c 20 40 00       	push   $0x40208c
439054:	51                   	push   %ecx
439055:	8b 8d d0 f5 ff ff    	mov    -0xa30(%ebp),%ecx
43905b:	ba 04 01 00 00       	mov    $0x104,%edx
439060:	e8 4b c2 fd ff       	call   0x4152b0
439065:	8b c8                	mov    %eax,%ecx
439067:	e8 74 fc fe ff       	call   0x428ce0
43906c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43906f:	8b c6                	mov    %esi,%eax
439071:	5f                   	pop    %edi
439072:	5e                   	pop    %esi
439073:	33 cd                	xor    %ebp,%ecx
439075:	5b                   	pop    %ebx
439076:	e8 d5 3e 01 00       	call   0x44cf50
43907b:	8b e5                	mov    %ebp,%esp
43907d:	5d                   	pop    %ebp
43907e:	c2 08 00             	ret    $0x8
439081:	8b 33                	mov    (%ebx),%esi
439083:	ff 15 6c 20 45 00    	call   *0x45206c
439089:	8b 76 10             	mov    0x10(%esi),%esi
43908c:	8b ce                	mov    %esi,%ecx
43908e:	50                   	push   %eax
43908f:	ff 15 84 23 45 00    	call   *0x452384
439095:	8b cb                	mov    %ebx,%ecx
439097:	ff d6                	call   *%esi
439099:	8b f0                	mov    %eax,%esi
43909b:	85 f6                	test   %esi,%esi
43909d:	78 af                	js     0x43904e
43909f:	8b 03                	mov    (%ebx),%eax
4390a1:	8d 8d e4 f9 ff ff    	lea    -0x61c(%ebp),%ecx
4390a7:	ff b5 d0 f5 ff ff    	push   -0xa30(%ebp)
4390ad:	51                   	push   %ecx
4390ae:	8b 70 1c             	mov    0x1c(%eax),%esi
4390b1:	8b ce                	mov    %esi,%ecx
4390b3:	ff 15 84 23 45 00    	call   *0x452384
4390b9:	8b cb                	mov    %ebx,%ecx
4390bb:	ff d6                	call   *%esi
4390bd:	8b f0                	mov    %eax,%esi
4390bf:	89 b5 c8 f5 ff ff    	mov    %esi,-0xa38(%ebp)
4390c5:	85 f6                	test   %esi,%esi
4390c7:	78 85                	js     0x43904e
4390c9:	8d 4b 08             	lea    0x8(%ebx),%ecx
4390cc:	e8 bf b6 fe ff       	call   0x424790
4390d1:	85 c0                	test   %eax,%eax
4390d3:	75 0a                	jne    0x4390df
4390d5:	6a ff                	push   $0xffffffff
4390d7:	8d 4b 08             	lea    0x8(%ebx),%ecx
4390da:	e8 01 ba fe ff       	call   0x424ae0
4390df:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4390e5:	8b cb                	mov    %ebx,%ecx
4390e7:	50                   	push   %eax
4390e8:	e8 53 fd ff ff       	call   0x438e40
4390ed:	8b f8                	mov    %eax,%edi
4390ef:	85 ff                	test   %edi,%edi
4390f1:	75 3b                	jne    0x43912e
4390f3:	68 34 08 00 00       	push   $0x834
4390f8:	50                   	push   %eax
4390f9:	ff 35 00 12 45 00    	push   0x451200
4390ff:	ff 15 24 21 45 00    	call   *0x452124
439105:	85 c0                	test   %eax,%eax
439107:	0f 84 9e 00 00 00    	je     0x4391ab
43910d:	8d 8d f4 fd ff ff    	lea    -0x20c(%ebp),%ecx
439113:	51                   	push   %ecx
439114:	8b c8                	mov    %eax,%ecx
439116:	e8 d5 4a 00 00       	call   0x43dbf0
43911b:	8b f8                	mov    %eax,%edi
43911d:	85 ff                	test   %edi,%edi
43911f:	0f 84 86 00 00 00    	je     0x4391ab
439125:	57                   	push   %edi
439126:	8d 4b 0c             	lea    0xc(%ebx),%ecx
439129:	e8 62 49 00 00       	call   0x43da90
43912e:	8b b7 10 02 00 00    	mov    0x210(%edi),%esi
439134:	8d 87 14 02 00 00    	lea    0x214(%edi),%eax
43913a:	89 85 cc f5 ff ff    	mov    %eax,-0xa34(%ebp)
439140:	e8 bb 42 ff ff       	call   0x42d400
439145:	2b c6                	sub    %esi,%eax
439147:	78 3b                	js     0x439184
439149:	33 c0                	xor    %eax,%eax
43914b:	66 89 87 14 02 00 00 	mov    %ax,0x214(%edi)
439152:	66 89 87 1c 04 00 00 	mov    %ax,0x41c(%edi)
439159:	66 89 87 24 06 00 00 	mov    %ax,0x624(%edi)