40befa:	be 3a 05 00 00       	mov    $0x53a,%esi
40beff:	68 48 01 00 00       	push   $0x148
40bf04:	eb 57                	jmp    0x40bf5d
40bf06:	8d 45 f4             	lea    -0xc(%ebp),%eax
40bf09:	50                   	push   %eax
40bf0a:	8d 45 fc             	lea    -0x4(%ebp),%eax
40bf0d:	50                   	push   %eax
40bf0e:	53                   	push   %ebx
40bf0f:	6a 02                	push   $0x2
40bf11:	53                   	push   %ebx
40bf12:	68 a0 31 40 00       	push   $0x4031a0
40bf17:	53                   	push   %ebx
40bf18:	ff 75 08             	push   0x8(%ebp)
40bf1b:	68 02 00 00 80       	push   $0x80000002
40bf20:	ff 15 10 60 41 00    	call   *0x416010
40bf26:	8b f0                	mov    %eax,%esi
40bf28:	85 f6                	test   %esi,%esi
40bf2a:	74 0d                	je     0x40bf39
40bf2c:	53                   	push   %ebx
40bf2d:	68 70 35 40 00       	push   $0x403570
40bf32:	68 58 01 00 00       	push   $0x158
40bf37:	eb 24                	jmp    0x40bf5d
40bf39:	ff 75 f8             	push   -0x8(%ebp)
40bf3c:	57                   	push   %edi
40bf3d:	6a 03                	push   $0x3
40bf3f:	53                   	push   %ebx
40bf40:	ff 75 0c             	push   0xc(%ebp)
40bf43:	ff 75 fc             	push   -0x4(%ebp)
40bf46:	ff 15 08 60 41 00    	call   *0x416008
40bf4c:	8b f0                	mov    %eax,%esi
40bf4e:	85 f6                	test   %esi,%esi
40bf50:	74 16                	je     0x40bf68
40bf52:	53                   	push   %ebx
40bf53:	68 70 35 40 00       	push   $0x403570
40bf58:	68 67 01 00 00       	push   $0x167
40bf5d:	68 d0 34 40 00       	push   $0x4034d0
40bf62:	51                   	push   %ecx
40bf63:	e8 6a 50 00 00       	call   0x410fd2
40bf68:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
40bf6b:	74 0c                	je     0x40bf79
40bf6d:	ff 75 fc             	push   -0x4(%ebp)
40bf70:	ff 15 18 60 41 00    	call   *0x416018
40bf76:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40bf79:	85 ff                	test   %edi,%edi
40bf7b:	74 0f                	je     0x40bf8c
40bf7d:	57                   	push   %edi
40bf7e:	53                   	push   %ebx
40bf7f:	ff 15 e0 60 41 00    	call   *0x4160e0
40bf85:	50                   	push   %eax
40bf86:	ff 15 e4 60 41 00    	call   *0x4160e4
40bf8c:	5f                   	pop    %edi
40bf8d:	8b c6                	mov    %esi,%eax
40bf8f:	5e                   	pop    %esi
40bf90:	5b                   	pop    %ebx
40bf91:	c9                   	leave
40bf92:	c2 0c 00             	ret    $0xc
40bf95:	8b ff                	mov    %edi,%edi
40bf97:	55                   	push   %ebp
40bf98:	8b ec                	mov    %esp,%ebp
40bf9a:	83 ec 40             	sub    $0x40,%esp
40bf9d:	a1 f4 51 41 00       	mov    0x4151f4,%eax
40bfa2:	33 c5                	xor    %ebp,%eax
40bfa4:	89 45 fc             	mov    %eax,-0x4(%ebp)
40bfa7:	8b 45 0c             	mov    0xc(%ebp),%eax
40bfaa:	33 c9                	xor    %ecx,%ecx
40bfac:	53                   	push   %ebx
40bfad:	8b 5d 10             	mov    0x10(%ebp),%ebx
40bfb0:	56                   	push   %esi
40bfb1:	33 f6                	xor    %esi,%esi
40bfb3:	89 4d e0             	mov    %ecx,-0x20(%ebp)
40bfb6:	46                   	inc    %esi
40bfb7:	89 4d d8             	mov    %ecx,-0x28(%ebp)
40bfba:	89 4d f4             	mov    %ecx,-0xc(%ebp)
40bfbd:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40bfc0:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40bfc3:	b9 30 3b 40 00       	mov    $0x403b30,%ecx
40bfc8:	57                   	push   %edi
40bfc9:	89 45 d4             	mov    %eax,-0x2c(%ebp)
40bfcc:	89 5d dc             	mov    %ebx,-0x24(%ebp)
40bfcf:	66 c7 45 f8 00 05    	movw   $0x500,-0x8(%ebp)
40bfd5:	89 75 e8             	mov    %esi,-0x18(%ebp)
40bfd8:	66 8b 10             	mov    (%eax),%dx
40bfdb:	66 3b 11             	cmp    (%ecx),%dx
40bfde:	75 20                	jne    0x40c000
40bfe0:	66 85 d2             	test   %dx,%dx
40bfe3:	74 15                	je     0x40bffa
40bfe5:	66 8b 50 02          	mov    0x2(%eax),%dx
40bfe9:	66 3b 51 02          	cmp    0x2(%ecx),%dx
40bfed:	75 11                	jne    0x40c000
40bfef:	83 c0 04             	add    $0x4,%eax
40bff2:	83 c1 04             	add    $0x4,%ecx
40bff5:	66 85 d2             	test   %dx,%dx
40bff8:	75 de                	jne    0x40bfd8
40bffa:	33 f6                	xor    %esi,%esi
40bffc:	8b c6                	mov    %esi,%eax
40bffe:	eb 06                	jmp    0x40c006
40c000:	1b c0                	sbb    %eax,%eax
40c002:	0b c6                	or     %esi,%eax
40c004:	33 f6                	xor    %esi,%esi
40c006:	bf d0 34 40 00       	mov    $0x4034d0,%edi
40c00b:	57                   	push   %edi
40c00c:	85 c0                	test   %eax,%eax
40c00e:	75 6e                	jne    0x40c07e
40c010:	68 8c 01 00 00       	push   $0x18c
40c015:	68 f8 2a 40 00       	push   $0x402af8
40c01a:	e8 fe 4e 00 00       	call   0x410f1d
40c01f:	57                   	push   %edi
40c020:	68 8f 01 00 00       	push   $0x18f
40c025:	68 68 2c 40 00       	push   $0x402c68
40c02a:	c7 45 e0 15 00 00 00 	movl   $0x15,-0x20(%ebp)
40c031:	c7 45 e4 0b 00 00 00 	movl   $0xb,-0x1c(%ebp)
40c038:	e8 e0 4e 00 00       	call   0x410f1d
40c03d:	8d 45 f0             	lea    -0x10(%ebp),%eax
40c040:	50                   	push   %eax
40c041:	56                   	push   %esi
40c042:	56                   	push   %esi
40c043:	56                   	push   %esi
40c044:	56                   	push   %esi
40c045:	56                   	push   %esi
40c046:	56                   	push   %esi
40c047:	56                   	push   %esi
40c048:	6a 04                	push   $0x4
40c04a:	6a 01                	push   $0x1
40c04c:	8d 45 f4             	lea    -0xc(%ebp),%eax
40c04f:	50                   	push   %eax
40c050:	ff 15 38 60 41 00    	call   *0x416038
40c056:	85 c0                	test   %eax,%eax
40c058:	0f 85 81 00 00 00    	jne    0x40c0df
40c05e:	ff 15 68 61 41 00    	call   *0x416168
40c064:	6a 00                	push   $0x0
40c066:	68 b0 35 40 00       	push   $0x4035b0
40c06b:	68 b0 01 00 00       	push   $0x1b0
40c070:	8b f0                	mov    %eax,%esi
40c072:	57                   	push   %edi
40c073:	51                   	push   %ecx
40c074:	e8 59 4f 00 00       	call   0x410fd2
40c079:	e9 8a 02 00 00       	jmp    0x40c308
40c07e:	68 92 01 00 00       	push   $0x192
40c083:	68 f8 2a 40 00       	push   $0x402af8
40c088:	e8 90 4e 00 00       	call   0x410f1d
40c08d:	57                   	push   %edi
40c08e:	68 96 01 00 00       	push   $0x196
40c093:	68 68 2c 40 00       	push   $0x402c68
40c098:	89 75 e8             	mov    %esi,-0x18(%ebp)
40c09b:	c7 45 d8 07 00 00 00 	movl   $0x7,-0x28(%ebp)
40c0a2:	c7 45 e4 03 00 00 00 	movl   $0x3,-0x1c(%ebp)
40c0a9:	e8 6f 4e 00 00       	call   0x410f1d
40c0ae:	8d 45 ec             	lea    -0x14(%ebp),%eax
40c0b1:	50                   	push   %eax
40c0b2:	56                   	push   %esi
40c0b3:	56                   	push   %esi
40c0b4:	56                   	push   %esi
40c0b5:	56                   	push   %esi
40c0b6:	56                   	push   %esi
40c0b7:	56                   	push   %esi
40c0b8:	56                   	push   %esi
40c0b9:	6a 0a                	push   $0xa
40c0bb:	6a 01                	push   $0x1
40c0bd:	8d 45 f4             	lea    -0xc(%ebp),%eax
40c0c0:	50                   	push   %eax
40c0c1:	ff 15 38 60 41 00    	call   *0x416038
40c0c7:	85 c0                	test   %eax,%eax
40c0c9:	75 14                	jne    0x40c0df
40c0cb:	ff 15 68 61 41 00    	call   *0x416168
40c0d1:	6a 00                	push   $0x0
40c0d3:	68 b0 35 40 00       	push   $0x4035b0
40c0d8:	68 cb 01 00 00       	push   $0x1cb
40c0dd:	eb 91                	jmp    0x40c070
40c0df:	53                   	push   %ebx
40c0e0:	ff 15 3c 60 41 00    	call   *0x41603c
40c0e6:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
40c0ea:	8d 70 20             	lea    0x20(%eax),%esi
40c0ed:	74 05                	je     0x40c0f4
40c0ef:	ff 75 f0             	push   -0x10(%ebp)
40c0f2:	eb 03                	jmp    0x40c0f7
40c0f4:	ff 75 ec             	push   -0x14(%ebp)
40c0f7:	ff 15 3c 60 41 00    	call   *0x41603c
40c0fd:	03 f0                	add    %eax,%esi
40c0ff:	56                   	push   %esi
40c100:	6a 00                	push   $0x0
40c102:	ff 15 e0 60 41 00    	call   *0x4160e0
40c108:	50                   	push   %eax
40c109:	ff 15 dc 60 41 00    	call   *0x4160dc
40c10f:	8b d8                	mov    %eax,%ebx
40c111:	85 db                	test   %ebx,%ebx
40c113:	75 17                	jne    0x40c12c
40c115:	6a 08                	push   $0x8
40c117:	5e                   	pop    %esi
40c118:	68 0e 00 07 80       	push   $0x8007000e
40c11d:	68 b0 35 40 00       	push   $0x4035b0
40c122:	68 e3 01 00 00       	push   $0x1e3
40c127:	e9 46 ff ff ff       	jmp    0x40c072
40c12c:	6a 02                	push   $0x2
40c12e:	56                   	push   %esi
40c12f:	53                   	push   %ebx
40c130:	ff 15 2c 60 41 00    	call   *0x41602c
40c136:	85 c0                	test   %eax,%eax
40c138:	75 19                	jne    0x40c153
40c13a:	ff 15 68 61 41 00    	call   *0x416168
40c140:	6a 00                	push   $0x0
40c142:	68 b0 35 40 00       	push   $0x4035b0
40c147:	8b f0                	mov    %eax,%esi
40c149:	68 f3 01 00 00       	push   $0x1f3
40c14e:	e9 9e 01 00 00       	jmp    0x40c2f1
40c153:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
40c157:	8b 75 dc             	mov    -0x24(%ebp),%esi
40c15a:	56                   	push   %esi
40c15b:	74 55                	je     0x40c1b2
40c15d:	ff 75 e0             	push   -0x20(%ebp)
40c160:	6a 02                	push   $0x2
40c162:	53                   	push   %ebx
40c163:	ff 15 40 60 41 00    	call   *0x416040
40c169:	85 c0                	test   %eax,%eax
40c16b:	75 19                	jne    0x40c186
40c16d:	ff 15 68 61 41 00    	call   *0x416168
40c173:	6a 00                	push   $0x0
40c175:	68 b0 35 40 00       	push   $0x4035b0
40c17a:	8b f0                	mov    %eax,%esi
40c17c:	68 03 02 00 00       	push   $0x203
40c181:	e9 6b 01 00 00       	jmp    0x40c2f1
40c186:	ff 75 f0             	push   -0x10(%ebp)
40c189:	ff 75 e4             	push   -0x1c(%ebp)
40c18c:	6a 02                	push   $0x2
40c18e:	53                   	push   %ebx
40c18f:	ff 15 40 60 41 00    	call   *0x416040
40c195:	85 c0                	test   %eax,%eax
40c197:	75 6e                	jne    0x40c207
40c199:	ff 15 68 61 41 00    	call   *0x416168
40c19f:	6a 00                	push   $0x0
40c1a1:	68 b0 35 40 00       	push   $0x4035b0
40c1a6:	8b f0                	mov    %eax,%esi
40c1a8:	68 14 02 00 00       	push   $0x214
40c1ad:	e9 3f 01 00 00       	jmp    0x40c2f1
40c1b2:	ff 75 d8             	push   -0x28(%ebp)
40c1b5:	6a 02                	push   $0x2
40c1b7:	53                   	push   %ebx
40c1b8:	ff 15 40 60 41 00    	call   *0x416040
40c1be:	85 c0                	test   %eax,%eax
40c1c0:	75 19                	jne    0x40c1db
40c1c2:	ff 15 68 61 41 00    	call   *0x416168
40c1c8:	6a 00                	push   $0x0
40c1ca:	68 b0 35 40 00       	push   $0x4035b0
40c1cf:	8b f0                	mov    %eax,%esi
40c1d1:	68 23 02 00 00       	push   $0x223
40c1d6:	e9 16 01 00 00       	jmp    0x40c2f1
40c1db:	ff 75 ec             	push   -0x14(%ebp)
40c1de:	ff 75 e4             	push   -0x1c(%ebp)
40c1e1:	6a 02                	push   $0x2
40c1e3:	53                   	push   %ebx
40c1e4:	ff 15 40 60 41 00    	call   *0x416040
40c1ea:	85 c0                	test   %eax,%eax
40c1ec:	75 19                	jne    0x40c207
40c1ee:	ff 15 68 61 41 00    	call   *0x416168
40c1f4:	6a 00                	push   $0x0
40c1f6:	68 b0 35 40 00       	push   $0x4035b0
40c1fb:	8b f0                	mov    %eax,%esi
40c1fd:	68 34 02 00 00       	push   $0x234
40c202:	e9 ea 00 00 00       	jmp    0x40c2f1
40c207:	6a 01                	push   $0x1
40c209:	8d 45 c0             	lea    -0x40(%ebp),%eax
40c20c:	50                   	push   %eax
40c20d:	ff 15 28 60 41 00    	call   *0x416028
40c213:	85 c0                	test   %eax,%eax
40c215:	75 19                	jne    0x40c230
40c217:	ff 15 68 61 41 00    	call   *0x416168
40c21d:	6a 00                	push   $0x0
40c21f:	68 b0 35 40 00       	push   $0x4035b0
40c224:	8b f0                	mov    %eax,%esi
40c226:	68 42 02 00 00       	push   $0x242
40c22b:	e9 c1 00 00 00       	jmp    0x40c2f1
40c230:	6a 00                	push   $0x0
40c232:	53                   	push   %ebx
40c233:	6a 01                	push   $0x1
40c235:	8d 45 c0             	lea    -0x40(%ebp),%eax
40c238:	50                   	push   %eax
40c239:	ff 15 44 60 41 00    	call   *0x416044
40c23f:	85 c0                	test   %eax,%eax
40c241:	75 19                	jne    0x40c25c
40c243:	ff 15 68 61 41 00    	call   *0x416168
40c249:	6a 00                	push   $0x0
40c24b:	68 b0 35 40 00       	push   $0x4035b0
40c250:	8b f0                	mov    %eax,%esi
40c252:	68 51 02 00 00       	push   $0x251
40c257:	e9 95 00 00 00       	jmp    0x40c2f1
40c25c:	6a 00                	push   $0x0
40c25e:	56                   	push   %esi
40c25f:	8d 45 c0             	lea    -0x40(%ebp),%eax
40c262:	50                   	push   %eax
40c263:	ff 15 48 60 41 00    	call   *0x416048
40c269:	85 c0                	test   %eax,%eax
40c26b:	75 16                	jne    0x40c283
40c26d:	ff 15 68 61 41 00    	call   *0x416168
40c273:	6a 00                	push   $0x0
40c275:	68 b0 35 40 00       	push   $0x4035b0
40c27a:	8b f0                	mov    %eax,%esi
40c27c:	68 5b 02 00 00       	push   $0x25b
40c281:	eb 6e                	jmp    0x40c2f1
40c283:	6a 00                	push   $0x0
40c285:	56                   	push   %esi
40c286:	8d 45 c0             	lea    -0x40(%ebp),%eax
40c289:	50                   	push   %eax
40c28a:	ff 15 4c 60 41 00    	call   *0x41604c
40c290:	85 c0                	test   %eax,%eax
40c292:	75 16                	jne    0x40c2aa
40c294:	ff 15 68 61 41 00    	call   *0x416168
40c29a:	6a 00                	push   $0x0
40c29c:	68 b0 35 40 00       	push   $0x4035b0
40c2a1:	8b f0                	mov    %eax,%esi
40c2a3:	68 64 02 00 00       	push   $0x264
40c2a8:	eb 47                	jmp    0x40c2f1
40c2aa:	8d 45 c0             	lea    -0x40(%ebp),%eax
40c2ad:	50                   	push   %eax
40c2ae:	ff 15 34 60 41 00    	call   *0x416034
40c2b4:	85 c0                	test   %eax,%eax
40c2b6:	75 16                	jne    0x40c2ce
40c2b8:	ff 15 68 61 41 00    	call   *0x416168
40c2be:	6a 00                	push   $0x0
40c2c0:	68 b0 35 40 00       	push   $0x4035b0
40c2c5:	8b f0                	mov    %eax,%esi
40c2c7:	68 6d 02 00 00       	push   $0x26d
40c2cc:	eb 23                	jmp    0x40c2f1
40c2ce:	8d 45 c0             	lea    -0x40(%ebp),%eax
40c2d1:	50                   	push   %eax
40c2d2:	ff 75 d4             	push   -0x2c(%ebp)
40c2d5:	68 90 3a 40 00       	push   $0x403a90
40c2da:	e8 66 fb ff ff       	call   0x40be45
40c2df:	8b f0                	mov    %eax,%esi
40c2e1:	85 f6                	test   %esi,%esi
40c2e3:	74 13                	je     0x40c2f8
40c2e5:	6a 00                	push   $0x0
40c2e7:	68 b0 35 40 00       	push   $0x4035b0
40c2ec:	68 76 02 00 00       	push   $0x276
40c2f1:	57                   	push   %edi
40c2f2:	51                   	push   %ecx
40c2f3:	e8 da 4c 00 00       	call   0x410fd2
40c2f8:	53                   	push   %ebx
40c2f9:	6a 00                	push   $0x0
40c2fb:	ff 15 e0 60 41 00    	call   *0x4160e0
40c301:	50                   	push   %eax
40c302:	ff 15 e4 60 41 00    	call   *0x4160e4
40c308:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
40c30c:	74 0d                	je     0x40c31b
40c30e:	ff 75 f0             	push   -0x10(%ebp)
40c311:	ff 15 50 60 41 00    	call   *0x416050
40c317:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
40c31b:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
40c31f:	74 09                	je     0x40c32a
40c321:	ff 75 ec             	push   -0x14(%ebp)
40c324:	ff 15 50 60 41 00    	call   *0x416050
40c32a:	8b 4d fc             	mov    -0x4(%ebp),%ecx