43fd51:	e8 de 42 fe ff       	call   0x424034
43fd56:	eb 1c                	jmp    0x43fd74
43fd58:	8b 45 08             	mov    0x8(%ebp),%eax
43fd5b:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
43fd5f:	74 13                	je     0x43fd74
43fd61:	8b 45 08             	mov    0x8(%ebp),%eax
43fd64:	8b 40 d8             	mov    -0x28(%eax),%eax
43fd67:	8b 40 14             	mov    0x14(%eax),%eax
43fd6a:	ba 1e 00 00 ff       	mov    $0xff00001e,%edx
43fd6f:	e8 7c 4b fe ff       	call   0x4248f0
43fd74:	8b 45 08             	mov    0x8(%ebp),%eax
43fd77:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
43fd7b:	74 15                	je     0x43fd92
43fd7d:	8b 45 08             	mov    0x8(%ebp),%eax
43fd80:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
43fd84:	74 1d                	je     0x43fda3
43fd86:	8b 45 08             	mov    0x8(%ebp),%eax
43fd89:	8b 40 c8             	mov    -0x38(%eax),%eax
43fd8c:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
43fd90:	75 11                	jne    0x43fda3
43fd92:	8b 45 08             	mov    0x8(%ebp),%eax
43fd95:	8d 50 e0             	lea    -0x20(%eax),%edx
43fd98:	8b 45 08             	mov    0x8(%ebp),%eax
43fd9b:	8b 40 d8             	mov    -0x28(%eax),%eax
43fd9e:	e8 f1 4e fe ff       	call   0x424c94
43fda3:	8b 45 08             	mov    0x8(%ebp),%eax
43fda6:	83 78 d0 00          	cmpl   $0x0,-0x30(%eax)
43fdaa:	74 09                	je     0x43fdb5
43fdac:	8b 45 08             	mov    0x8(%ebp),%eax
43fdaf:	c6 40 cf 00          	movb   $0x0,-0x31(%eax)
43fdb3:	eb 2e                	jmp    0x43fde3
43fdb5:	8b 45 08             	mov    0x8(%ebp),%eax
43fdb8:	8b 40 d0             	mov    -0x30(%eax),%eax
43fdbb:	8b 15 cc dc 43 00    	mov    0x43dccc,%edx
43fdc1:	e8 e2 3c fc ff       	call   0x403aa8
43fdc6:	84 c0                	test   %al,%al
43fdc8:	74 12                	je     0x43fddc
43fdca:	8b 45 08             	mov    0x8(%ebp),%eax
43fdcd:	8b 40 d0             	mov    -0x30(%eax),%eax
43fdd0:	0f b6 40 60          	movzbl 0x60(%eax),%eax
43fdd4:	8b 55 08             	mov    0x8(%ebp),%edx
43fdd7:	88 42 cf             	mov    %al,-0x31(%edx)
43fdda:	eb 07                	jmp    0x43fde3
43fddc:	8b 45 08             	mov    0x8(%ebp),%eax
43fddf:	c6 40 cf 00          	movb   $0x0,-0x31(%eax)
43fde3:	8b 45 08             	mov    0x8(%ebp),%eax
43fde6:	8b 40 e8             	mov    -0x18(%eax),%eax
43fde9:	48                   	dec    %eax
43fdea:	8b 55 08             	mov    0x8(%ebp),%edx
43fded:	89 42 f8             	mov    %eax,-0x8(%edx)
43fdf0:	8b 45 08             	mov    0x8(%ebp),%eax
43fdf3:	8b 40 e4             	mov    -0x1c(%eax),%eax
43fdf6:	40                   	inc    %eax
43fdf7:	8b 55 08             	mov    0x8(%ebp),%edx
43fdfa:	89 42 f4             	mov    %eax,-0xc(%edx)
43fdfd:	8b 45 08             	mov    0x8(%ebp),%eax
43fe00:	8b 40 c8             	mov    -0x38(%eax),%eax
43fe03:	8b 40 30             	mov    0x30(%eax),%eax
43fe06:	ba 30 06 44 00       	mov    $0x440630,%edx
43fe0b:	e8 48 4d fc ff       	call   0x404b58
43fe10:	75 34                	jne    0x43fe46
43fe12:	8b 45 08             	mov    0x8(%ebp),%eax
43fe15:	8d 50 e0             	lea    -0x20(%eax),%edx
43fe18:	8b 45 08             	mov    0x8(%ebp),%eax
43fe1b:	8b 40 d8             	mov    -0x28(%eax),%eax
43fe1e:	e8 71 4e fe ff       	call   0x424c94
43fe23:	8b 45 08             	mov    0x8(%ebp),%eax
43fe26:	8b 40 f8             	mov    -0x8(%eax),%eax
43fe29:	83 c0 02             	add    $0x2,%eax
43fe2c:	8b 55 08             	mov    0x8(%ebp),%edx
43fe2f:	89 42 f0             	mov    %eax,-0x10(%edx)
43fe32:	8b 45 08             	mov    0x8(%ebp),%eax
43fe35:	33 d2                	xor    %edx,%edx
43fe37:	89 50 f8             	mov    %edx,-0x8(%eax)
43fe3a:	8b 45 08             	mov    0x8(%ebp),%eax
43fe3d:	c6 40 c7 00          	movb   $0x0,-0x39(%eax)
43fe41:	e9 92 04 00 00       	jmp    0x4402d8
43fe46:	8b 45 08             	mov    0x8(%ebp),%eax
43fe49:	83 78 c0 00          	cmpl   $0x0,-0x40(%eax)
43fe4d:	74 47                	je     0x43fe96
43fe4f:	8b 45 08             	mov    0x8(%ebp),%eax
43fe52:	8b 40 c8             	mov    -0x38(%eax),%eax
43fe55:	8b 58 40             	mov    0x40(%eax),%ebx
43fe58:	83 fb ff             	cmp    $0xffffffff,%ebx
43fe5b:	7e 12                	jle    0x43fe6f
43fe5d:	8b 45 08             	mov    0x8(%ebp),%eax
43fe60:	8b 45 08             	mov    0x8(%ebp),%eax
43fe63:	8b 40 c0             	mov    -0x40(%eax),%eax
43fe66:	e8 21 7f 01 00       	call   0x457d8c
43fe6b:	3b d8                	cmp    %eax,%ebx
43fe6d:	7c 2b                	jl     0x43fe9a
43fe6f:	8b 45 08             	mov    0x8(%ebp),%eax
43fe72:	8b 40 c8             	mov    -0x38(%eax),%eax
43fe75:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
43fe79:	74 1b                	je     0x43fe96
43fe7b:	8b 45 08             	mov    0x8(%ebp),%eax
43fe7e:	8b 40 c8             	mov    -0x38(%eax),%eax
43fe81:	8b 70 4c             	mov    0x4c(%eax),%esi
43fe84:	85 f6                	test   %esi,%esi
43fe86:	74 12                	je     0x43fe9a
43fe88:	8b 45 08             	mov    0x8(%ebp),%eax
43fe8b:	8b c6                	mov    %esi,%eax
43fe8d:	8b 10                	mov    (%eax),%edx
43fe8f:	ff 52 1c             	call   *0x1c(%edx)
43fe92:	84 c0                	test   %al,%al
43fe94:	75 04                	jne    0x43fe9a
43fe96:	33 c0                	xor    %eax,%eax
43fe98:	eb 02                	jmp    0x43fe9c
43fe9a:	b0 01                	mov    $0x1,%al
43fe9c:	8b 55 08             	mov    0x8(%ebp),%edx
43fe9f:	88 42 bf             	mov    %al,-0x41(%edx)
43fea2:	8b 45 08             	mov    0x8(%ebp),%eax
43fea5:	80 78 bf 00          	cmpb   $0x0,-0x41(%eax)
43fea9:	75 23                	jne    0x43fece
43feab:	8b 45 08             	mov    0x8(%ebp),%eax
43feae:	8b 40 c8             	mov    -0x38(%eax),%eax
43feb1:	8b 58 4c             	mov    0x4c(%eax),%ebx
43feb4:	85 db                	test   %ebx,%ebx
43feb6:	0f 84 bf 03 00 00    	je     0x44027b
43febc:	8b 45 08             	mov    0x8(%ebp),%eax
43febf:	8b c3                	mov    %ebx,%eax
43fec1:	8b 10                	mov    (%eax),%edx
43fec3:	ff 52 1c             	call   *0x1c(%edx)
43fec6:	84 c0                	test   %al,%al
43fec8:	0f 85 ad 03 00 00    	jne    0x44027b
43fece:	8b 45 08             	mov    0x8(%ebp),%eax
43fed1:	c6 40 c7 01          	movb   $0x1,-0x39(%eax)
43fed5:	8b 45 08             	mov    0x8(%ebp),%eax
43fed8:	80 78 bf 00          	cmpb   $0x0,-0x41(%eax)
43fedc:	74 2c                	je     0x43ff0a
43fede:	8b 45 08             	mov    0x8(%ebp),%eax
43fee1:	8b 40 f8             	mov    -0x8(%eax),%eax
43fee4:	8b 55 08             	mov    0x8(%ebp),%edx
43fee7:	8b 52 c0             	mov    -0x40(%edx),%edx
43feea:	2b 42 34             	sub    0x34(%edx),%eax
43feed:	8b 55 08             	mov    0x8(%ebp),%edx
43fef0:	89 42 f0             	mov    %eax,-0x10(%edx)
43fef3:	8b 45 08             	mov    0x8(%ebp),%eax
43fef6:	8b 40 f4             	mov    -0xc(%eax),%eax
43fef9:	8b 55 08             	mov    0x8(%ebp),%edx
43fefc:	8b 52 c0             	mov    -0x40(%edx),%edx
43feff:	03 42 30             	add    0x30(%edx),%eax
43ff02:	8b 55 08             	mov    0x8(%ebp),%edx
43ff05:	89 42 fc             	mov    %eax,-0x4(%edx)
43ff08:	eb 1e                	jmp    0x43ff28
43ff0a:	8b 45 08             	mov    0x8(%ebp),%eax
43ff0d:	8b 40 f8             	mov    -0x8(%eax),%eax
43ff10:	83 e8 10             	sub    $0x10,%eax
43ff13:	8b 55 08             	mov    0x8(%ebp),%edx
43ff16:	89 42 f0             	mov    %eax,-0x10(%edx)
43ff19:	8b 45 08             	mov    0x8(%ebp),%eax
43ff1c:	8b 40 f4             	mov    -0xc(%eax),%eax
43ff1f:	83 c0 10             	add    $0x10,%eax
43ff22:	8b 55 08             	mov    0x8(%ebp),%edx
43ff25:	89 42 fc             	mov    %eax,-0x4(%edx)
43ff28:	8b 45 08             	mov    0x8(%ebp),%eax
43ff2b:	8b 40 c8             	mov    -0x38(%eax),%eax
43ff2e:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
43ff32:	0f 84 b3 00 00 00    	je     0x43ffeb
43ff38:	8b 45 08             	mov    0x8(%ebp),%eax
43ff3b:	ff 48 f0             	decl   -0x10(%eax)
43ff3e:	8b 45 08             	mov    0x8(%ebp),%eax
43ff41:	ff 40 fc             	incl   -0x4(%eax)
43ff44:	8b 45 08             	mov    0x8(%ebp),%eax
43ff47:	8b 40 d8             	mov    -0x28(%eax),%eax
43ff4a:	8b 40 14             	mov    0x14(%eax),%eax
43ff4d:	e8 96 49 fe ff       	call   0x4248e8
43ff52:	8b 55 08             	mov    0x8(%ebp),%edx
43ff55:	89 42 b8             	mov    %eax,-0x48(%edx)
43ff58:	8b 45 08             	mov    0x8(%ebp),%eax
43ff5b:	f6 40 0c 01          	testb  $0x1,0xc(%eax)
43ff5f:	75 46                	jne    0x43ffa7
43ff61:	8b 45 08             	mov    0x8(%ebp),%eax
43ff64:	8b 40 d8             	mov    -0x28(%eax),%eax
43ff67:	8b 40 14             	mov    0x14(%eax),%eax
43ff6a:	e8 79 49 fe ff       	call   0x4248e8
43ff6f:	8b 55 08             	mov    0x8(%ebp),%edx
43ff72:	89 42 b8             	mov    %eax,-0x48(%edx)
43ff75:	ba 14 00 00 ff       	mov    $0xff000014,%edx
43ff7a:	b8 0f 00 00 ff       	mov    $0xff00000f,%eax
43ff7f:	e8 8c b9 fe ff       	call   0x42b910
43ff84:	8b d0                	mov    %eax,%edx
43ff86:	8b 45 08             	mov    0x8(%ebp),%eax
43ff89:	8b 40 d8             	mov    -0x28(%eax),%eax
43ff8c:	8b 40 14             	mov    0x14(%eax),%eax
43ff8f:	e8 30 49 fe ff       	call   0x4248c4
43ff94:	8b 45 08             	mov    0x8(%ebp),%eax
43ff97:	8d 50 f0             	lea    -0x10(%eax),%edx
43ff9a:	8b 45 08             	mov    0x8(%ebp),%eax
43ff9d:	8b 40 d8             	mov    -0x28(%eax),%eax
43ffa0:	e8 ef 4c fe ff       	call   0x424c94
43ffa5:	eb 24                	jmp    0x43ffcb
43ffa7:	8b 45 08             	mov    0x8(%ebp),%eax
43ffaa:	8b 40 d8             	mov    -0x28(%eax),%eax
43ffad:	8b 40 14             	mov    0x14(%eax),%eax
43ffb0:	ba 0f 00 00 ff       	mov    $0xff00000f,%edx
43ffb5:	e8 36 49 fe ff       	call   0x4248f0
43ffba:	8b 45 08             	mov    0x8(%ebp),%eax
43ffbd:	8d 50 f0             	lea    -0x10(%eax),%edx
43ffc0:	8b 45 08             	mov    0x8(%ebp),%eax
43ffc3:	8b 40 d8             	mov    -0x28(%eax),%eax
43ffc6:	e8 c9 4c fe ff       	call   0x424c94
43ffcb:	8b 45 08             	mov    0x8(%ebp),%eax
43ffce:	8b 50 b8             	mov    -0x48(%eax),%edx
43ffd1:	8b 45 08             	mov    0x8(%ebp),%eax
43ffd4:	8b 40 d8             	mov    -0x28(%eax),%eax
43ffd7:	8b 40 14             	mov    0x14(%eax),%eax
43ffda:	e8 11 49 fe ff       	call   0x4248f0
43ffdf:	8b 45 08             	mov    0x8(%ebp),%eax
43ffe2:	ff 48 f8             	decl   -0x8(%eax)
43ffe5:	8b 45 08             	mov    0x8(%ebp),%eax
43ffe8:	ff 40 f4             	incl   -0xc(%eax)
43ffeb:	8b 45 08             	mov    0x8(%ebp),%eax
43ffee:	80 78 bf 00          	cmpb   $0x0,-0x41(%eax)
43fff2:	0f 84 5b 01 00 00    	je     0x440153
43fff8:	8b 45 08             	mov    0x8(%ebp),%eax
43fffb:	8b 40 c8             	mov    -0x38(%eax),%eax
43fffe:	8b 58 40             	mov    0x40(%eax),%ebx
440001:	83 fb ff             	cmp    $0xffffffff,%ebx
440004:	7e 4a                	jle    0x440050
440006:	8b 45 08             	mov    0x8(%ebp),%eax
440009:	8b 45 08             	mov    0x8(%ebp),%eax
44000c:	8b 40 c0             	mov    -0x40(%eax),%eax
44000f:	e8 78 7d 01 00       	call   0x457d8c
440014:	3b d8                	cmp    %eax,%ebx
440016:	7d 38                	jge    0x440050
440018:	8b 45 08             	mov    0x8(%ebp),%eax
44001b:	8b 40 f4             	mov    -0xc(%eax),%eax
44001e:	50                   	push   %eax
44001f:	8b 45 08             	mov    0x8(%ebp),%eax
440022:	8b 40 c8             	mov    -0x38(%eax),%eax
440025:	8b 40 40             	mov    0x40(%eax),%eax
440028:	50                   	push   %eax
440029:	8b 45 08             	mov    0x8(%ebp),%eax
44002c:	8b 40 c8             	mov    -0x38(%eax),%eax
44002f:	0f b6 40 39          	movzbl 0x39(%eax),%eax
440033:	50                   	push   %eax
440034:	8b 45 08             	mov    0x8(%ebp),%eax
440037:	8b 48 f0             	mov    -0x10(%eax),%ecx
44003a:	8b 45 08             	mov    0x8(%ebp),%eax
44003d:	8b 50 d8             	mov    -0x28(%eax),%edx
440040:	8b 45 08             	mov    0x8(%ebp),%eax
440043:	8b 40 c0             	mov    -0x40(%eax),%eax
440046:	e8 31 80 01 00       	call   0x45807c
44004b:	e9 11 02 00 00       	jmp    0x440261
440050:	b2 01                	mov    $0x1,%dl
440052:	a1 d4 2f 42 00       	mov    0x422fd4,%eax
440057:	e8 2c 96 fe ff       	call   0x429688
44005c:	8b 55 08             	mov    0x8(%ebp),%edx
44005f:	89 42 b4             	mov    %eax,-0x4c(%edx)
440062:	33 c0                	xor    %eax,%eax
440064:	55                   	push   %ebp
440065:	68 4c 01 44 00       	push   $0x44014c
44006a:	64 ff 30             	push   %fs:(%eax)
44006d:	64 89 20             	mov    %esp,%fs:(%eax)
440070:	8b 45 08             	mov    0x8(%ebp),%eax
440073:	8b 40 b4             	mov    -0x4c(%eax),%eax
440076:	b2 01                	mov    $0x1,%dl
440078:	8b 08                	mov    (%eax),%ecx
44007a:	ff 51 3c             	call   *0x3c(%ecx)
44007d:	68 f8 7f 00 00       	push   $0x7ff8
440082:	6a 00                	push   $0x0
440084:	e8 cf 70 fc ff       	call   0x407158
440089:	8b d0                	mov    %eax,%edx
44008b:	8b 45 08             	mov    0x8(%ebp),%eax
44008e:	8b 40 b4             	mov    -0x4c(%eax),%eax
440091:	e8 ee a6 fe ff       	call   0x42a784
440096:	8b 45 08             	mov    0x8(%ebp),%eax
440099:	8b 40 d8             	mov    -0x28(%eax),%eax
44009c:	8b 40 0c             	mov    0xc(%eax),%eax
44009f:	8b 40 18             	mov    0x18(%eax),%eax
4400a2:	8b 55 08             	mov    0x8(%ebp),%edx
4400a5:	89 42 b8             	mov    %eax,-0x48(%edx)
4400a8:	8b 45 08             	mov    0x8(%ebp),%eax
4400ab:	8b 40 d8             	mov    -0x28(%eax),%eax
4400ae:	8b 40 0c             	mov    0xc(%eax),%eax
4400b1:	ba 12 00 00 ff       	mov    $0xff000012,%edx
4400b6:	e8 79 3f fe ff       	call   0x424034
4400bb:	8b 45 08             	mov    0x8(%ebp),%eax
4400be:	8b 40 b4             	mov    -0x4c(%eax),%eax
4400c1:	50                   	push   %eax
4400c2:	8b 45 08             	mov    0x8(%ebp),%eax
4400c5:	8b 40 b4             	mov    -0x4c(%eax),%eax
4400c8:	8b 10                	mov    (%eax),%edx
4400ca:	ff 52 20             	call   *0x20(%edx)
4400cd:	8b 55 08             	mov    0x8(%ebp),%edx
4400d0:	8b 52 fc             	mov    -0x4(%edx),%edx
4400d3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4400d6:	8b 71 f4             	mov    -0xc(%ecx),%esi
4400d9:	2b d6                	sub    %esi,%edx
4400db:	2b d0                	sub    %eax,%edx
4400dd:	d1 fa                	sar    $1,%edx
4400df:	79 03                	jns    0x4400e4
4400e1:	83 d2 00             	adc    $0x0,%edx
4400e4:	8b 45 08             	mov    0x8(%ebp),%eax
4400e7:	03 d6                	add    %esi,%edx
4400e9:	42                   	inc    %edx
4400ea:	52                   	push   %edx
4400eb:	8b 45 08             	mov    0x8(%ebp),%eax
4400ee:	8b 40 b4             	mov    -0x4c(%eax),%eax
4400f1:	8b 10                	mov    (%eax),%edx
4400f3:	ff 52 2c             	call   *0x2c(%edx)
4400f6:	8b 55 08             	mov    0x8(%ebp),%edx
4400f9:	8b 52 f8             	mov    -0x8(%edx),%edx
4400fc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4400ff:	8b 59 f0             	mov    -0x10(%ecx),%ebx
440102:	2b d3                	sub    %ebx,%edx
440104:	2b d0                	sub    %eax,%edx
440106:	d1 fa                	sar    $1,%edx
440108:	79 03                	jns    0x44010d
44010a:	83 d2 00             	adc    $0x0,%edx
44010d:	8b 45 08             	mov    0x8(%ebp),%eax
440110:	03 d3                	add    %ebx,%edx
440112:	42                   	inc    %edx
440113:	8b 45 08             	mov    0x8(%ebp),%eax
440116:	8b 40 d8             	mov    -0x28(%eax),%eax
440119:	59                   	pop    %ecx
44011a:	e8 c9 4a fe ff       	call   0x424be8
44011f:	8b 45 08             	mov    0x8(%ebp),%eax
440122:	8b 50 b8             	mov    -0x48(%eax),%edx
440125:	8b 45 08             	mov    0x8(%ebp),%eax
440128:	8b 40 d8             	mov    -0x28(%eax),%eax
44012b:	8b 40 0c             	mov    0xc(%eax),%eax
44012e:	e8 01 3f fe ff       	call   0x424034
440133:	33 c0                	xor    %eax,%eax
440135:	5a                   	pop    %edx
440136:	59                   	pop    %ecx
440137:	59                   	pop    %ecx
440138:	64 89 10             	mov    %edx,%fs:(%eax)
44013b:	68 61 02 44 00       	push   $0x440261
440140:	8b 45 08             	mov    0x8(%ebp),%eax
440143:	8b 40 b4             	mov    -0x4c(%eax),%eax
440146:	e8 d1 37 fc ff       	call   0x40391c
44014b:	c3                   	ret
44014c:	e9 5f 3f fc ff       	jmp    0x4040b0
440151:	eb ed                	jmp    0x440140
440153:	8b 45 08             	mov    0x8(%ebp),%eax
440156:	8b 55 08             	mov    0x8(%ebp),%edx
440159:	8d 70 f0             	lea    -0x10(%eax),%esi
44015c:	8d 7a a4             	lea    -0x5c(%edx),%edi
44015f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
440160:	a5                   	movsl  %ds:(%esi),%es:(%edi)
440161:	a5                   	movsl  %ds:(%esi),%es:(%edi)
440162:	a5                   	movsl  %ds:(%esi),%es:(%edi)
440163:	8b 45 08             	mov    0x8(%ebp),%eax
440166:	8b 40 c8             	mov    -0x38(%eax),%eax
440169:	8b 40 4c             	mov    0x4c(%eax),%eax
44016c:	8b 10                	mov    (%eax),%edx
44016e:	ff 52 2c             	call   *0x2c(%edx)
440171:	8b 55 08             	mov    0x8(%ebp),%edx