47cd8c:	cc                   	int3
47cd8d:	cc                   	int3
47cd8e:	cc                   	int3
47cd8f:	cc                   	int3
47cd90:	cc                   	int3
47cd91:	cc                   	int3
47cd92:	cc                   	int3
47cd93:	cc                   	int3
47cd94:	cc                   	int3
47cd95:	cc                   	int3
47cd96:	cc                   	int3
47cd97:	cc                   	int3
47cd98:	cc                   	int3
47cd99:	cc                   	int3
47cd9a:	cc                   	int3
47cd9b:	cc                   	int3
47cd9c:	cc                   	int3
47cd9d:	cc                   	int3
47cd9e:	cc                   	int3
47cd9f:	cc                   	int3
47cda0:	cc                   	int3
47cda1:	cc                   	int3
47cda2:	cc                   	int3
47cda3:	cc                   	int3
47cda4:	cc                   	int3
47cda5:	cc                   	int3
47cda6:	cc                   	int3
47cda7:	cc                   	int3
47cda8:	cc                   	int3
47cda9:	cc                   	int3
47cdaa:	cc                   	int3
47cdab:	cc                   	int3
47cdac:	cc                   	int3
47cdad:	cc                   	int3
47cdae:	cc                   	int3
47cdaf:	cc                   	int3
47cdb0:	8b ff                	mov    %edi,%edi
47cdb2:	55                   	push   %ebp
47cdb3:	8b ec                	mov    %esp,%ebp
47cdb5:	83 ec 08             	sub    $0x8,%esp
47cdb8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
47cdbb:	8b 45 f8             	mov    -0x8(%ebp),%eax
47cdbe:	83 38 00             	cmpl   $0x0,(%eax)
47cdc1:	74 09                	je     0x47cdcc
47cdc3:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
47cdca:	eb 07                	jmp    0x47cdd3
47cdcc:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
47cdd3:	8a 45 fc             	mov    -0x4(%ebp),%al
47cdd6:	8b e5                	mov    %ebp,%esp
47cdd8:	5d                   	pop    %ebp
47cdd9:	c3                   	ret
47cdda:	cc                   	int3
47cddb:	cc                   	int3
47cddc:	cc                   	int3
47cddd:	cc                   	int3
47cdde:	cc                   	int3
47cddf:	cc                   	int3
47cde0:	cc                   	int3
47cde1:	cc                   	int3
47cde2:	cc                   	int3
47cde3:	cc                   	int3
47cde4:	cc                   	int3
47cde5:	cc                   	int3
47cde6:	cc                   	int3
47cde7:	cc                   	int3
47cde8:	cc                   	int3
47cde9:	cc                   	int3
47cdea:	cc                   	int3
47cdeb:	cc                   	int3
47cdec:	cc                   	int3
47cded:	cc                   	int3
47cdee:	cc                   	int3
47cdef:	cc                   	int3
47cdf0:	8b ff                	mov    %edi,%edi
47cdf2:	55                   	push   %ebp
47cdf3:	8b ec                	mov    %esp,%ebp
47cdf5:	83 ec 54             	sub    $0x54,%esp
47cdf8:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
47cdfc:	7e 2c                	jle    0x47ce2a
47cdfe:	8b 45 18             	mov    0x18(%ebp),%eax
47ce01:	50                   	push   %eax
47ce02:	8b 4d 14             	mov    0x14(%ebp),%ecx
47ce05:	51                   	push   %ecx
47ce06:	e8 6c 61 f8 ff       	call   0x402f77
47ce0b:	83 c4 08             	add    $0x8,%esp
47ce0e:	89 45 e8             	mov    %eax,-0x18(%ebp)
47ce11:	8b 55 e8             	mov    -0x18(%ebp),%edx
47ce14:	3b 55 18             	cmp    0x18(%ebp),%edx
47ce17:	7d 0b                	jge    0x47ce24
47ce19:	8b 45 e8             	mov    -0x18(%ebp),%eax
47ce1c:	83 c0 01             	add    $0x1,%eax
47ce1f:	89 45 18             	mov    %eax,0x18(%ebp)
47ce22:	eb 06                	jmp    0x47ce2a
47ce24:	8b 4d e8             	mov    -0x18(%ebp),%ecx
47ce27:	89 4d 18             	mov    %ecx,0x18(%ebp)
47ce2a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
47ce31:	83 7d 24 00          	cmpl   $0x0,0x24(%ebp)
47ce35:	75 0b                	jne    0x47ce42
47ce37:	8b 55 08             	mov    0x8(%ebp),%edx
47ce3a:	8b 02                	mov    (%edx),%eax
47ce3c:	8b 48 08             	mov    0x8(%eax),%ecx
47ce3f:	89 4d 24             	mov    %ecx,0x24(%ebp)
47ce42:	83 7d 28 00          	cmpl   $0x0,0x28(%ebp)
47ce46:	74 09                	je     0x47ce51
47ce48:	c7 45 e4 09 00 00 00 	movl   $0x9,-0x1c(%ebp)
47ce4f:	eb 07                	jmp    0x47ce58
47ce51:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
47ce58:	6a 00                	push   $0x0
47ce5a:	6a 00                	push   $0x0
47ce5c:	8b 55 18             	mov    0x18(%ebp),%edx
47ce5f:	52                   	push   %edx
47ce60:	8b 45 14             	mov    0x14(%ebp),%eax
47ce63:	50                   	push   %eax
47ce64:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
47ce67:	51                   	push   %ecx
47ce68:	8b 55 24             	mov    0x24(%ebp),%edx
47ce6b:	52                   	push   %edx
47ce6c:	ff 15 64 c1 4f 00    	call   *0x4fc164
47ce72:	89 45 f0             	mov    %eax,-0x10(%ebp)
47ce75:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
47ce79:	75 07                	jne    0x47ce82
47ce7b:	33 c0                	xor    %eax,%eax
47ce7d:	e9 20 03 00 00       	jmp    0x47d1a2
47ce82:	8b 45 f0             	mov    -0x10(%ebp),%eax
47ce85:	d1 e0                	shl    $1,%eax
47ce87:	50                   	push   %eax
47ce88:	e8 8f 52 f8 ff       	call   0x40211c
47ce8d:	83 c4 04             	add    $0x4,%esp
47ce90:	85 c0                	test   %eax,%eax
47ce92:	74 33                	je     0x47cec7
47ce94:	68 dd dd 00 00       	push   $0xdddd
47ce99:	6a 6a                	push   $0x6a
47ce9b:	68 ec 09 4b 00       	push   $0x4b09ec
47cea0:	6a 02                	push   $0x2
47cea2:	8b 4d f0             	mov    -0x10(%ebp),%ecx
47cea5:	d1 e1                	shl    $1,%ecx
47cea7:	51                   	push   %ecx
47cea8:	e8 6f 52 f8 ff       	call   0x40211c
47cead:	83 c4 04             	add    $0x4,%esp
47ceb0:	50                   	push   %eax
47ceb1:	e8 ed 66 f8 ff       	call   0x4035a3
47ceb6:	83 c4 10             	add    $0x10,%esp
47ceb9:	50                   	push   %eax
47ceba:	e8 cc 65 f8 ff       	call   0x40348b
47cebf:	83 c4 08             	add    $0x8,%esp
47cec2:	89 45 e0             	mov    %eax,-0x20(%ebp)
47cec5:	eb 07                	jmp    0x47cece
47cec7:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
47cece:	8b 55 e0             	mov    -0x20(%ebp),%edx
47ced1:	52                   	push   %edx
47ced2:	8d 4d b0             	lea    -0x50(%ebp),%ecx
47ced5:	e8 3b 4a f8 ff       	call   0x401915
47ceda:	8b 00                	mov    (%eax),%eax
47cedc:	50                   	push   %eax
47cedd:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cee0:	e8 0e 44 f8 ff       	call   0x4012f3
47cee5:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cee8:	e8 1b 61 f8 ff       	call   0x403008
47ceed:	0f b6 c8             	movzbl %al,%ecx
47cef0:	85 c9                	test   %ecx,%ecx
47cef2:	75 17                	jne    0x47cf0b
47cef4:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
47cefb:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cefe:	e8 bc 54 f8 ff       	call   0x4023bf
47cf03:	8b 45 d8             	mov    -0x28(%ebp),%eax
47cf06:	e9 97 02 00 00       	jmp    0x47d1a2
47cf0b:	8b 55 f0             	mov    -0x10(%ebp),%edx
47cf0e:	52                   	push   %edx
47cf0f:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cf12:	e8 12 5e f8 ff       	call   0x402d29
47cf17:	50                   	push   %eax
47cf18:	8b 45 18             	mov    0x18(%ebp),%eax
47cf1b:	50                   	push   %eax
47cf1c:	8b 4d 14             	mov    0x14(%ebp),%ecx
47cf1f:	51                   	push   %ecx
47cf20:	6a 01                	push   $0x1
47cf22:	8b 55 24             	mov    0x24(%ebp),%edx
47cf25:	52                   	push   %edx
47cf26:	ff 15 64 c1 4f 00    	call   *0x4fc164
47cf2c:	85 c0                	test   %eax,%eax
47cf2e:	75 16                	jne    0x47cf46
47cf30:	8b 45 fc             	mov    -0x4(%ebp),%eax
47cf33:	89 45 d4             	mov    %eax,-0x2c(%ebp)
47cf36:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cf39:	e8 81 54 f8 ff       	call   0x4023bf
47cf3e:	8b 45 d4             	mov    -0x2c(%ebp),%eax
47cf41:	e9 5c 02 00 00       	jmp    0x47d1a2
47cf46:	6a 00                	push   $0x0
47cf48:	6a 00                	push   $0x0
47cf4a:	6a 00                	push   $0x0
47cf4c:	6a 00                	push   $0x0
47cf4e:	6a 00                	push   $0x0
47cf50:	8b 4d f0             	mov    -0x10(%ebp),%ecx
47cf53:	51                   	push   %ecx
47cf54:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cf57:	e8 cd 5d f8 ff       	call   0x402d29
47cf5c:	50                   	push   %eax
47cf5d:	8b 55 10             	mov    0x10(%ebp),%edx
47cf60:	52                   	push   %edx
47cf61:	8b 45 0c             	mov    0xc(%ebp),%eax
47cf64:	50                   	push   %eax
47cf65:	e8 9e 47 f8 ff       	call   0x401708
47cf6a:	89 45 fc             	mov    %eax,-0x4(%ebp)
47cf6d:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
47cf71:	75 16                	jne    0x47cf89
47cf73:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47cf76:	89 4d d0             	mov    %ecx,-0x30(%ebp)
47cf79:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cf7c:	e8 3e 54 f8 ff       	call   0x4023bf
47cf81:	8b 45 d0             	mov    -0x30(%ebp),%eax
47cf84:	e9 19 02 00 00       	jmp    0x47d1a2
47cf89:	8b 55 10             	mov    0x10(%ebp),%edx
47cf8c:	81 e2 00 04 00 00    	and    $0x400,%edx
47cf92:	74 71                	je     0x47d005
47cf94:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
47cf98:	74 66                	je     0x47d000
47cf9a:	8b 45 fc             	mov    -0x4(%ebp),%eax
47cf9d:	3b 45 20             	cmp    0x20(%ebp),%eax
47cfa0:	7e 17                	jle    0x47cfb9
47cfa2:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
47cfa9:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cfac:	e8 0e 54 f8 ff       	call   0x4023bf
47cfb1:	8b 45 cc             	mov    -0x34(%ebp),%eax
47cfb4:	e9 e9 01 00 00       	jmp    0x47d1a2
47cfb9:	6a 00                	push   $0x0
47cfbb:	6a 00                	push   $0x0
47cfbd:	6a 00                	push   $0x0
47cfbf:	8b 4d 20             	mov    0x20(%ebp),%ecx
47cfc2:	51                   	push   %ecx
47cfc3:	8b 55 1c             	mov    0x1c(%ebp),%edx
47cfc6:	52                   	push   %edx
47cfc7:	8b 45 f0             	mov    -0x10(%ebp),%eax
47cfca:	50                   	push   %eax
47cfcb:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cfce:	e8 56 5d f8 ff       	call   0x402d29
47cfd3:	50                   	push   %eax
47cfd4:	8b 4d 10             	mov    0x10(%ebp),%ecx
47cfd7:	51                   	push   %ecx
47cfd8:	8b 55 0c             	mov    0xc(%ebp),%edx
47cfdb:	52                   	push   %edx
47cfdc:	e8 27 47 f8 ff       	call   0x401708
47cfe1:	89 45 fc             	mov    %eax,-0x4(%ebp)
47cfe4:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
47cfe8:	75 16                	jne    0x47d000
47cfea:	8b 45 fc             	mov    -0x4(%ebp),%eax
47cfed:	89 45 c8             	mov    %eax,-0x38(%ebp)
47cff0:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47cff3:	e8 c7 53 f8 ff       	call   0x4023bf
47cff8:	8b 45 c8             	mov    -0x38(%ebp),%eax
47cffb:	e9 a2 01 00 00       	jmp    0x47d1a2
47d000:	e9 8c 01 00 00       	jmp    0x47d191
47d005:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47d008:	89 4d ec             	mov    %ecx,-0x14(%ebp)
47d00b:	8b 55 ec             	mov    -0x14(%ebp),%edx
47d00e:	d1 e2                	shl    $1,%edx
47d010:	52                   	push   %edx
47d011:	e8 06 51 f8 ff       	call   0x40211c
47d016:	83 c4 04             	add    $0x4,%esp
47d019:	85 c0                	test   %eax,%eax
47d01b:	74 36                	je     0x47d053
47d01d:	68 dd dd 00 00       	push   $0xdddd
47d022:	68 a3 00 00 00       	push   $0xa3
47d027:	68 ec 09 4b 00       	push   $0x4b09ec
47d02c:	6a 02                	push   $0x2
47d02e:	8b 45 ec             	mov    -0x14(%ebp),%eax
47d031:	d1 e0                	shl    $1,%eax
47d033:	50                   	push   %eax
47d034:	e8 e3 50 f8 ff       	call   0x40211c
47d039:	83 c4 04             	add    $0x4,%esp
47d03c:	50                   	push   %eax
47d03d:	e8 61 65 f8 ff       	call   0x4035a3
47d042:	83 c4 10             	add    $0x10,%esp
47d045:	50                   	push   %eax
47d046:	e8 40 64 f8 ff       	call   0x40348b
47d04b:	83 c4 08             	add    $0x8,%esp
47d04e:	89 45 dc             	mov    %eax,-0x24(%ebp)
47d051:	eb 07                	jmp    0x47d05a
47d053:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
47d05a:	8b 4d dc             	mov    -0x24(%ebp),%ecx
47d05d:	51                   	push   %ecx
47d05e:	8d 4d ac             	lea    -0x54(%ebp),%ecx
47d061:	e8 af 48 f8 ff       	call   0x401915
47d066:	8b 10                	mov    (%eax),%edx
47d068:	52                   	push   %edx
47d069:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47d06c:	e8 82 42 f8 ff       	call   0x4012f3
47d071:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47d074:	e8 8f 5f f8 ff       	call   0x403008
47d079:	0f b6 c0             	movzbl %al,%eax
47d07c:	85 c0                	test   %eax,%eax
47d07e:	75 1f                	jne    0x47d09f
47d080:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
47d087:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47d08a:	e8 30 53 f8 ff       	call   0x4023bf
47d08f:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47d092:	e8 28 53 f8 ff       	call   0x4023bf
47d097:	8b 45 c4             	mov    -0x3c(%ebp),%eax
47d09a:	e9 03 01 00 00       	jmp    0x47d1a2
47d09f:	6a 00                	push   $0x0
47d0a1:	6a 00                	push   $0x0
47d0a3:	6a 00                	push   $0x0
47d0a5:	8b 4d ec             	mov    -0x14(%ebp),%ecx
47d0a8:	51                   	push   %ecx
47d0a9:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47d0ac:	e8 78 5c f8 ff       	call   0x402d29
47d0b1:	50                   	push   %eax
47d0b2:	8b 55 f0             	mov    -0x10(%ebp),%edx
47d0b5:	52                   	push   %edx
47d0b6:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47d0b9:	e8 6b 5c f8 ff       	call   0x402d29
47d0be:	50                   	push   %eax
47d0bf:	8b 45 10             	mov    0x10(%ebp),%eax
47d0c2:	50                   	push   %eax
47d0c3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47d0c6:	51                   	push   %ecx
47d0c7:	e8 3c 46 f8 ff       	call   0x401708
47d0cc:	89 45 fc             	mov    %eax,-0x4(%ebp)
47d0cf:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
47d0d3:	75 1e                	jne    0x47d0f3
47d0d5:	8b 55 fc             	mov    -0x4(%ebp),%edx
47d0d8:	89 55 c0             	mov    %edx,-0x40(%ebp)
47d0db:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47d0de:	e8 dc 52 f8 ff       	call   0x4023bf
47d0e3:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47d0e6:	e8 d4 52 f8 ff       	call   0x4023bf
47d0eb:	8b 45 c0             	mov    -0x40(%ebp),%eax
47d0ee:	e9 af 00 00 00       	jmp    0x47d1a2
47d0f3:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
47d0f7:	75 47                	jne    0x47d140
47d0f9:	6a 00                	push   $0x0
47d0fb:	6a 00                	push   $0x0
47d0fd:	6a 00                	push   $0x0
47d0ff:	6a 00                	push   $0x0
47d101:	8b 45 ec             	mov    -0x14(%ebp),%eax
47d104:	50                   	push   %eax
47d105:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47d108:	e8 1c 5c f8 ff       	call   0x402d29
47d10d:	50                   	push   %eax
47d10e:	6a 00                	push   $0x0
47d110:	8b 4d 24             	mov    0x24(%ebp),%ecx
47d113:	51                   	push   %ecx
47d114:	ff 15 70 c3 4f 00    	call   *0x4fc370
47d11a:	89 45 fc             	mov    %eax,-0x4(%ebp)
47d11d:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
47d121:	75 1b                	jne    0x47d13e
47d123:	8b 55 fc             	mov    -0x4(%ebp),%edx
47d126:	89 55 bc             	mov    %edx,-0x44(%ebp)
47d129:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47d12c:	e8 8e 52 f8 ff       	call   0x4023bf
47d131:	8d 4d f8             	lea    -0x8(%ebp),%ecx