45ace3:	74 3d                	je     0x45ad22
45ace5:	66 8b 04 24          	mov    (%esp),%ax
45ace9:	50                   	push   %eax
45acea:	8b 44 24 08          	mov    0x8(%esp),%eax
45acee:	50                   	push   %eax
45acef:	8b 4e 50             	mov    0x50(%esi),%ecx
45acf2:	8b d5                	mov    %ebp,%edx
45acf4:	8b 46 4c             	mov    0x4c(%esi),%eax
45acf7:	8b 18                	mov    (%eax),%ebx
45acf9:	ff 53 20             	call   *0x20(%ebx)
45acfc:	8b d8                	mov    %eax,%ebx
45acfe:	eb 22                	jmp    0x45ad22
45ad00:	80 be a4 00 00 00 00 	cmpb   $0x0,0xa4(%esi)
45ad07:	75 19                	jne    0x45ad22
45ad09:	8b 44 24 04          	mov    0x4(%esp),%eax
45ad0d:	50                   	push   %eax
45ad0e:	0f b7 44 24 04       	movzwl 0x4(%esp),%eax
45ad13:	50                   	push   %eax
45ad14:	68 1f b0 00 00       	push   $0xb01f
45ad19:	8b 46 30             	mov    0x30(%esi),%eax
45ad1c:	50                   	push   %eax
45ad1d:	e8 86 ba fa ff       	call   0x4067a8
45ad22:	8b c3                	mov    %ebx,%eax
45ad24:	83 c4 0c             	add    $0xc,%esp
45ad27:	5d                   	pop    %ebp
45ad28:	5f                   	pop    %edi
45ad29:	5e                   	pop    %esi
45ad2a:	5b                   	pop    %ebx
45ad2b:	c3                   	ret
45ad2c:	55                   	push   %ebp
45ad2d:	8b ec                	mov    %esp,%ebp
45ad2f:	6a 00                	push   $0x0
45ad31:	53                   	push   %ebx
45ad32:	56                   	push   %esi
45ad33:	57                   	push   %edi
45ad34:	8b fa                	mov    %edx,%edi
45ad36:	8b f0                	mov    %eax,%esi
45ad38:	33 c0                	xor    %eax,%eax
45ad3a:	55                   	push   %ebp
45ad3b:	68 84 ad 45 00       	push   $0x45ad84
45ad40:	64 ff 30             	push   %fs:(%eax)
45ad43:	64 89 20             	mov    %esp,%fs:(%eax)
45ad46:	b3 01                	mov    $0x1,%bl
45ad48:	8b c6                	mov    %esi,%eax
45ad4a:	e8 19 05 00 00       	call   0x45b268
45ad4f:	84 c0                	test   %al,%al
45ad51:	74 19                	je     0x45ad6c
45ad53:	8d 55 fc             	lea    -0x4(%ebp),%edx
45ad56:	8b c6                	mov    %esi,%eax
45ad58:	e8 57 0d 00 00       	call   0x45bab4
45ad5d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45ad60:	8b d7                	mov    %edi,%edx
45ad62:	8b 46 4c             	mov    0x4c(%esi),%eax
45ad65:	8b 30                	mov    (%eax),%esi
45ad67:	ff 56 0c             	call   *0xc(%esi)
45ad6a:	eb 02                	jmp    0x45ad6e
45ad6c:	33 db                	xor    %ebx,%ebx
45ad6e:	33 c0                	xor    %eax,%eax
45ad70:	5a                   	pop    %edx
45ad71:	59                   	pop    %ecx
45ad72:	59                   	pop    %ecx
45ad73:	64 89 10             	mov    %edx,%fs:(%eax)
45ad76:	68 8b ad 45 00       	push   $0x45ad8b
45ad7b:	8d 45 fc             	lea    -0x4(%ebp),%eax
45ad7e:	e8 39 92 fa ff       	call   0x403fbc
45ad83:	c3                   	ret
45ad84:	e9 37 8c fa ff       	jmp    0x4039c0
45ad89:	eb f0                	jmp    0x45ad7b
45ad8b:	8b c3                	mov    %ebx,%eax
45ad8d:	5f                   	pop    %edi
45ad8e:	5e                   	pop    %esi
45ad8f:	5b                   	pop    %ebx
45ad90:	59                   	pop    %ecx
45ad91:	5d                   	pop    %ebp
45ad92:	c3                   	ret
45ad93:	90                   	nop
45ad94:	55                   	push   %ebp
45ad95:	8b ec                	mov    %esp,%ebp
45ad97:	6a 00                	push   $0x0
45ad99:	53                   	push   %ebx
45ad9a:	56                   	push   %esi
45ad9b:	57                   	push   %edi
45ad9c:	8b fa                	mov    %edx,%edi
45ad9e:	8b f0                	mov    %eax,%esi
45ada0:	33 c0                	xor    %eax,%eax
45ada2:	55                   	push   %ebp
45ada3:	68 ec ad 45 00       	push   $0x45adec
45ada8:	64 ff 30             	push   %fs:(%eax)
45adab:	64 89 20             	mov    %esp,%fs:(%eax)
45adae:	b3 01                	mov    $0x1,%bl
45adb0:	8b c6                	mov    %esi,%eax
45adb2:	e8 b1 04 00 00       	call   0x45b268
45adb7:	84 c0                	test   %al,%al
45adb9:	74 19                	je     0x45add4
45adbb:	8d 55 fc             	lea    -0x4(%ebp),%edx
45adbe:	8b c6                	mov    %esi,%eax
45adc0:	e8 ef 0c 00 00       	call   0x45bab4
45adc5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45adc8:	8b d7                	mov    %edi,%edx
45adca:	8b 46 4c             	mov    0x4c(%esi),%eax
45adcd:	8b 30                	mov    (%eax),%esi
45adcf:	ff 56 10             	call   *0x10(%esi)
45add2:	eb 02                	jmp    0x45add6
45add4:	33 db                	xor    %ebx,%ebx
45add6:	33 c0                	xor    %eax,%eax
45add8:	5a                   	pop    %edx
45add9:	59                   	pop    %ecx
45adda:	59                   	pop    %ecx
45addb:	64 89 10             	mov    %edx,%fs:(%eax)
45adde:	68 f3 ad 45 00       	push   $0x45adf3
45ade3:	8d 45 fc             	lea    -0x4(%ebp),%eax
45ade6:	e8 d1 91 fa ff       	call   0x403fbc
45adeb:	c3                   	ret
45adec:	e9 cf 8b fa ff       	jmp    0x4039c0
45adf1:	eb f0                	jmp    0x45ade3
45adf3:	8b c3                	mov    %ebx,%eax
45adf5:	5f                   	pop    %edi
45adf6:	5e                   	pop    %esi
45adf7:	5b                   	pop    %ebx
45adf8:	59                   	pop    %ecx
45adf9:	5d                   	pop    %ebp
45adfa:	c3                   	ret
45adfb:	90                   	nop
45adfc:	e8 c3 fd ff ff       	call   0x45abc4
45ae01:	c3                   	ret
45ae02:	8b c0                	mov    %eax,%eax
45ae04:	53                   	push   %ebx
45ae05:	56                   	push   %esi
45ae06:	8b d8                	mov    %eax,%ebx
45ae08:	3a 93 88 00 00 00    	cmp    0x88(%ebx),%dl
45ae0e:	74 3f                	je     0x45ae4f
45ae10:	8b c2                	mov    %edx,%eax
45ae12:	88 83 88 00 00 00    	mov    %al,0x88(%ebx)
45ae18:	84 c0                	test   %al,%al
45ae1a:	74 20                	je     0x45ae3c
45ae1c:	8b cb                	mov    %ebx,%ecx
45ae1e:	b2 01                	mov    $0x1,%dl
45ae20:	a1 00 dd 45 00       	mov    0x45dd00,%eax
45ae25:	ff 50 2c             	call   *0x2c(%eax)
45ae28:	8b f0                	mov    %eax,%esi
45ae2a:	89 b3 84 00 00 00    	mov    %esi,0x84(%ebx)
45ae30:	8b 53 5c             	mov    0x5c(%ebx),%edx
45ae33:	8b c6                	mov    %esi,%eax
45ae35:	e8 e6 ff fd ff       	call   0x43ae20
45ae3a:	eb 13                	jmp    0x45ae4f
45ae3c:	8b 83 84 00 00 00    	mov    0x84(%ebx),%eax
45ae42:	e8 25 84 fa ff       	call   0x40326c
45ae47:	33 c0                	xor    %eax,%eax
45ae49:	89 83 84 00 00 00    	mov    %eax,0x84(%ebx)
45ae4f:	5e                   	pop    %esi
45ae50:	5b                   	pop    %ebx
45ae51:	c3                   	ret
45ae52:	8b c0                	mov    %eax,%eax
45ae54:	53                   	push   %ebx
45ae55:	56                   	push   %esi
45ae56:	57                   	push   %edi
45ae57:	a1 bc 9b 46 00       	mov    0x469bbc,%eax
45ae5c:	e8 9f d5 ff ff       	call   0x458400
45ae61:	8b f0                	mov    %eax,%esi
45ae63:	4e                   	dec    %esi
45ae64:	85 f6                	test   %esi,%esi
45ae66:	7c 4c                	jl     0x45aeb4
45ae68:	46                   	inc    %esi
45ae69:	33 ff                	xor    %edi,%edi
45ae6b:	8b d7                	mov    %edi,%edx
45ae6d:	a1 bc 9b 46 00       	mov    0x469bbc,%eax
45ae72:	e8 75 d5 ff ff       	call   0x4583ec
45ae77:	8b d8                	mov    %eax,%ebx
45ae79:	8b c3                	mov    %ebx,%eax
45ae7b:	e8 e0 68 fe ff       	call   0x441760
45ae80:	84 c0                	test   %al,%al
45ae82:	74 2c                	je     0x45aeb0
45ae84:	8b c3                	mov    %ebx,%eax
45ae86:	e8 d1 65 fe ff       	call   0x44145c
45ae8b:	50                   	push   %eax
45ae8c:	e8 a7 b8 fa ff       	call   0x406738
45ae91:	85 c0                	test   %eax,%eax
45ae93:	74 1b                	je     0x45aeb0
45ae95:	8b c3                	mov    %ebx,%eax
45ae97:	e8 c0 65 fe ff       	call   0x44145c
45ae9c:	50                   	push   %eax
45ae9d:	e8 8e b8 fa ff       	call   0x406730
45aea2:	85 c0                	test   %eax,%eax
45aea4:	74 0a                	je     0x45aeb0
45aea6:	8b c3                	mov    %ebx,%eax
45aea8:	8b 10                	mov    (%eax),%edx
45aeaa:	ff 92 dc 00 00 00    	call   *0xdc(%edx)
45aeb0:	47                   	inc    %edi
45aeb1:	4e                   	dec    %esi
45aeb2:	75 b7                	jne    0x45ae6b
45aeb4:	5f                   	pop    %edi
45aeb5:	5e                   	pop    %esi
45aeb6:	5b                   	pop    %ebx
45aeb7:	c3                   	ret
45aeb8:	53                   	push   %ebx
45aeb9:	56                   	push   %esi
45aeba:	57                   	push   %edi
45aebb:	83 c4 f8             	add    $0xfffffff8,%esp
45aebe:	8b d8                	mov    %eax,%ebx
45aec0:	54                   	push   %esp
45aec1:	e8 da b6 fa ff       	call   0x4065a0
45aec6:	8b c4                	mov    %esp,%eax
45aec8:	b2 01                	mov    $0x1,%dl
45aeca:	e8 5d e6 fd ff       	call   0x43952c
45aecf:	8b f8                	mov    %eax,%edi
45aed1:	e8 52 cf fd ff       	call   0x437e28
45aed6:	8b f0                	mov    %eax,%esi
45aed8:	3b 7b 48             	cmp    0x48(%ebx),%edi
45aedb:	74 4b                	je     0x45af28
45aedd:	83 7b 48 00          	cmpl   $0x0,0x48(%ebx)
45aee1:	74 04                	je     0x45aee7
45aee3:	85 f6                	test   %esi,%esi
45aee5:	74 09                	je     0x45aef0
45aee7:	85 f6                	test   %esi,%esi
45aee9:	74 16                	je     0x45af01
45aeeb:	3b 73 48             	cmp    0x48(%ebx),%esi
45aeee:	75 11                	jne    0x45af01
45aef0:	6a 00                	push   $0x0
45aef2:	33 c9                	xor    %ecx,%ecx
45aef4:	ba 14 b0 00 00       	mov    $0xb014,%edx
45aef9:	8b 43 48             	mov    0x48(%ebx),%eax
45aefc:	e8 27 0f fe ff       	call   0x43be28
45af01:	89 7b 48             	mov    %edi,0x48(%ebx)
45af04:	83 7b 48 00          	cmpl   $0x0,0x48(%ebx)
45af08:	74 04                	je     0x45af0e
45af0a:	85 f6                	test   %esi,%esi
45af0c:	74 09                	je     0x45af17
45af0e:	85 f6                	test   %esi,%esi
45af10:	74 16                	je     0x45af28
45af12:	3b 73 48             	cmp    0x48(%ebx),%esi
45af15:	75 11                	jne    0x45af28
45af17:	6a 00                	push   $0x0
45af19:	33 c9                	xor    %ecx,%ecx
45af1b:	ba 13 b0 00 00       	mov    $0xb013,%edx
45af20:	8b 43 48             	mov    0x48(%ebx),%eax
45af23:	e8 00 0f fe ff       	call   0x43be28
45af28:	8b c7                	mov    %edi,%eax
45af2a:	59                   	pop    %ecx
45af2b:	5a                   	pop    %edx
45af2c:	5f                   	pop    %edi
45af2d:	5e                   	pop    %esi
45af2e:	5b                   	pop    %ebx
45af2f:	c3                   	ret
45af30:	55                   	push   %ebp
45af31:	8b ec                	mov    %esp,%ebp
45af33:	83 c4 f0             	add    $0xfffffff0,%esp
45af36:	53                   	push   %ebx
45af37:	56                   	push   %esi
45af38:	57                   	push   %edi
45af39:	33 c9                	xor    %ecx,%ecx
45af3b:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45af3e:	89 4d f0             	mov    %ecx,-0x10(%ebp)
45af41:	89 45 fc             	mov    %eax,-0x4(%ebp)
45af44:	33 c0                	xor    %eax,%eax
45af46:	55                   	push   %ebp
45af47:	68 40 b0 45 00       	push   $0x45b040
45af4c:	64 ff 30             	push   %fs:(%eax)
45af4f:	64 89 20             	mov    %esp,%fs:(%eax)
45af52:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af55:	e8 5e ff ff ff       	call   0x45aeb8
45af5a:	8b d8                	mov    %eax,%ebx
45af5c:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af5f:	80 b8 88 00 00 00 00 	cmpb   $0x0,0x88(%eax)
45af66:	74 11                	je     0x45af79
45af68:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af6b:	83 78 48 00          	cmpl   $0x0,0x48(%eax)
45af6f:	75 08                	jne    0x45af79
45af71:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af74:	e8 0f 05 00 00       	call   0x45b488
45af79:	8d 55 f0             	lea    -0x10(%ebp),%edx
45af7c:	8b c3                	mov    %ebx,%eax
45af7e:	e8 e5 df ff ff       	call   0x458f68
45af83:	8b 45 f0             	mov    -0x10(%ebp),%eax
45af86:	8d 55 f4             	lea    -0xc(%ebp),%edx
45af89:	e8 02 ce fd ff       	call   0x437d90
45af8e:	8b 55 f4             	mov    -0xc(%ebp),%edx
45af91:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
45af96:	e8 55 01 00 00       	call   0x45b0f0
45af9b:	c6 45 fb 01          	movb   $0x1,-0x5(%ebp)
45af9f:	33 c0                	xor    %eax,%eax
45afa1:	55                   	push   %ebp
45afa2:	68 e7 af 45 00       	push   $0x45afe7
45afa7:	64 ff 30             	push   %fs:(%eax)
45afaa:	64 89 20             	mov    %esp,%fs:(%eax)
45afad:	8b 45 fc             	mov    -0x4(%ebp),%eax
45afb0:	66 83 b8 02 01 00 00 	cmpw   $0x0,0x102(%eax)
45afb7:	00
45afb8:	74 15                	je     0x45afcf
45afba:	8d 4d fb             	lea    -0x5(%ebp),%ecx
45afbd:	8b 5d fc             	mov    -0x4(%ebp),%ebx
45afc0:	8b 55 fc             	mov    -0x4(%ebp),%edx
45afc3:	8b 83 04 01 00 00    	mov    0x104(%ebx),%eax
45afc9:	ff 93 00 01 00 00    	call   *0x100(%ebx)
45afcf:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
45afd3:	74 08                	je     0x45afdd
45afd5:	8b 45 fc             	mov    -0x4(%ebp),%eax
45afd8:	e8 77 fe ff ff       	call   0x45ae54
45afdd:	33 c0                	xor    %eax,%eax
45afdf:	5a                   	pop    %edx
45afe0:	59                   	pop    %ecx
45afe1:	59                   	pop    %ecx
45afe2:	64 89 10             	mov    %edx,%fs:(%eax)
45afe5:	eb 15                	jmp    0x45affc
45afe7:	e9 20 87 fa ff       	jmp    0x40370c
45afec:	8b 55 fc             	mov    -0x4(%ebp),%edx
45afef:	8b 45 fc             	mov    -0x4(%ebp),%eax
45aff2:	e8 fd f8 ff ff       	call   0x45a8f4
45aff7:	e8 78 8a fa ff       	call   0x403a74
45affc:	e8 57 b0 fa ff       	call   0x406058
45b001:	8b 15 94 80 46 00    	mov    0x468094,%edx
45b007:	3b 02                	cmp    (%edx),%eax
45b009:	75 0f                	jne    0x45b01a
45b00b:	33 c0                	xor    %eax,%eax
45b00d:	e8 92 e5 fb ff       	call   0x4195a4
45b012:	84 c0                	test   %al,%al
45b014:	74 04                	je     0x45b01a
45b016:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
45b01a:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
45b01e:	74 05                	je     0x45b025
45b020:	e8 e3 b8 fa ff       	call   0x406908
45b025:	33 c0                	xor    %eax,%eax
45b027:	5a                   	pop    %edx
45b028:	59                   	pop    %ecx
45b029:	59                   	pop    %ecx
45b02a:	64 89 10             	mov    %edx,%fs:(%eax)
45b02d:	68 47 b0 45 00       	push   $0x45b047
45b032:	8d 45 f0             	lea    -0x10(%ebp),%eax
45b035:	ba 02 00 00 00       	mov    $0x2,%edx
45b03a:	e8 a1 8f fa ff       	call   0x403fe0
45b03f:	c3                   	ret
45b040:	e9 7b 89 fa ff       	jmp    0x4039c0
45b045:	eb eb                	jmp    0x45b032
45b047:	5f                   	pop    %edi
45b048:	5e                   	pop    %esi
45b049:	5b                   	pop    %ebx
45b04a:	8b e5                	mov    %ebp,%esp
45b04c:	5d                   	pop    %ebp
45b04d:	c3                   	ret
45b04e:	8b c0                	mov    %eax,%eax
45b050:	53                   	push   %ebx
45b051:	56                   	push   %esi
45b052:	57                   	push   %edi
45b053:	8b fa                	mov    %edx,%edi
45b055:	a1 bc 9b 46 00       	mov    0x469bbc,%eax
45b05a:	e8 85 d3 ff ff       	call   0x4583e4
45b05f:	8b d8                	mov    %eax,%ebx
45b061:	4b                   	dec    %ebx
45b062:	85 db                	test   %ebx,%ebx
45b064:	7c 1f                	jl     0x45b085
45b066:	43                   	inc    %ebx