422f02:	8b 43 0c             	mov    0xc(%ebx),%eax
422f05:	83 c4 08             	add    $0x8,%esp
422f08:	85 c0                	test   %eax,%eax
422f0a:	74 12                	je     0x422f1e
422f0c:	50                   	push   %eax
422f0d:	ff 73 10             	push   0x10(%ebx)
422f10:	68 28 02 41 00       	push   $0x410228
422f15:	ff 15 74 23 45 00    	call   *0x452374
422f1b:	83 c4 0c             	add    $0xc,%esp
422f1e:	68 7c fa 40 00       	push   $0x40fa7c
422f23:	ff 15 74 23 45 00    	call   *0x452374
422f29:	83 c4 04             	add    $0x4,%esp
422f2c:	89 35 10 11 45 00    	mov    %esi,0x451110
422f32:	b9 0b 00 00 00       	mov    $0xb,%ecx
422f37:	b8 01 00 00 00       	mov    $0x1,%eax
422f3c:	d3 e0                	shl    %cl,%eax
422f3e:	3b f0                	cmp    %eax,%esi
422f40:	74 08                	je     0x422f4a
422f42:	41                   	inc    %ecx
422f43:	83 f9 10             	cmp    $0x10,%ecx
422f46:	7c ef                	jl     0x422f37
422f48:	eb 12                	jmp    0x422f5c
422f4a:	b8 20 00 00 00       	mov    $0x20,%eax
422f4f:	89 0d 14 11 45 00    	mov    %ecx,0x451114
422f55:	2b c1                	sub    %ecx,%eax
422f57:	a3 18 11 45 00       	mov    %eax,0x451118
422f5c:	b8 00 00 04 00       	mov    $0x40000,%eax
422f61:	99                   	cltd
422f62:	f7 fe                	idiv   %esi
422f64:	6a 06                	push   $0x6
422f66:	a3 1c 11 45 00       	mov    %eax,0x45111c
422f6b:	ff 15 e4 21 45 00    	call   *0x4521e4
422f71:	85 c0                	test   %eax,%eax
422f73:	6a 0a                	push   $0xa
422f75:	0f 95 05 cd 14 45 00 	setne  0x4514cd
422f7c:	ff 15 e4 21 45 00    	call   *0x4521e4
422f82:	68 d0 00 00 00       	push   $0xd0
422f87:	85 c0                	test   %eax,%eax
422f89:	89 3d c4 18 45 00    	mov    %edi,0x4518c4
422f8f:	6a 00                	push   $0x0
422f91:	68 f0 18 45 00       	push   $0x4518f0
422f96:	0f 95 05 ce 14 45 00 	setne  0x4514ce
422f9d:	89 3d c0 19 45 00    	mov    %edi,0x4519c0
422fa3:	89 3d 3c 15 45 00    	mov    %edi,0x45153c
422fa9:	89 3d c0 18 45 00    	mov    %edi,0x4518c0
422faf:	89 3d c8 18 45 00    	mov    %edi,0x4518c8
422fb5:	89 3d d0 18 45 00    	mov    %edi,0x4518d0
422fbb:	89 3d d4 18 45 00    	mov    %edi,0x4518d4
422fc1:	89 3d d8 18 45 00    	mov    %edi,0x4518d8
422fc7:	89 3d dc 18 45 00    	mov    %edi,0x4518dc
422fcd:	89 3d e0 18 45 00    	mov    %edi,0x4518e0
422fd3:	89 3d e4 18 45 00    	mov    %edi,0x4518e4
422fd9:	89 3d e8 18 45 00    	mov    %edi,0x4518e8
422fdf:	89 3d ec 18 45 00    	mov    %edi,0x4518ec
422fe5:	e8 77 aa 02 00       	call   0x44da61
422fea:	83 c4 0c             	add    $0xc,%esp
422fed:	c7 05 4c 19 45 00 00 	movl   $0x10000000,0x45194c
422ff4:	00 00 10
422ff7:	c7 05 b4 19 45 00 00 	movl   $0x10000000,0x4519b4
422ffe:	00 00 10
423001:	6a 00                	push   $0x0
423003:	68 00 00 00 68       	push   $0x68000000
423008:	6a 03                	push   $0x3
42300a:	6a 00                	push   $0x0
42300c:	6a 03                	push   $0x3
42300e:	68 00 00 00 80       	push   $0x80000000
423013:	ff 75 f0             	push   -0x10(%ebp)
423016:	ff 15 ec 20 45 00    	call   *0x4520ec
42301c:	89 45 f0             	mov    %eax,-0x10(%ebp)
42301f:	83 f8 ff             	cmp    $0xffffffff,%eax
423022:	75 5a                	jne    0x42307e
423024:	ff 15 6c 20 45 00    	call   *0x45206c
42302a:	6a 00                	push   $0x0
42302c:	6a 00                	push   $0x0
42302e:	8b f0                	mov    %eax,%esi
423030:	89 7d fc             	mov    %edi,-0x4(%ebp)
423033:	8d 45 fc             	lea    -0x4(%ebp),%eax
423036:	50                   	push   %eax
423037:	68 00 04 00 00       	push   $0x400
42303c:	56                   	push   %esi
42303d:	6a 00                	push   $0x0
42303f:	68 00 11 00 00       	push   $0x1100
423044:	ff 15 74 21 45 00    	call   *0x452174
42304a:	85 c0                	test   %eax,%eax
42304c:	74 22                	je     0x423070
42304e:	ff 75 fc             	push   -0x4(%ebp)
423051:	56                   	push   %esi
423052:	68 c0 fa 40 00       	push   $0x40fac0
423057:	68 e8 04 41 00       	push   $0x4104e8
42305c:	6a 02                	push   $0x2
42305e:	e8 9d a6 02 00       	call   0x44d700
423063:	83 c4 04             	add    $0x4,%esp
423066:	50                   	push   %eax
423067:	ff 15 3c 23 45 00    	call   *0x45233c
42306d:	83 c4 14             	add    $0x14,%esp
423070:	ff 75 fc             	push   -0x4(%ebp)
423073:	ff 15 34 21 45 00    	call   *0x452134
423079:	e9 19 07 00 00       	jmp    0x423797
42307e:	6a 00                	push   $0x0
423080:	6a 00                	push   $0x0
423082:	6a 00                	push   $0x0
423084:	50                   	push   %eax
423085:	ff 15 48 21 45 00    	call   *0x452148
42308b:	8b f8                	mov    %eax,%edi
42308d:	89 7d fc             	mov    %edi,-0x4(%ebp)
423090:	85 ff                	test   %edi,%edi
423092:	75 32                	jne    0x4230c6
423094:	ff 15 6c 20 45 00    	call   *0x45206c
42309a:	57                   	push   %edi
42309b:	57                   	push   %edi
42309c:	8b f0                	mov    %eax,%esi
42309e:	89 7d fc             	mov    %edi,-0x4(%ebp)
4230a1:	8d 45 fc             	lea    -0x4(%ebp),%eax
4230a4:	50                   	push   %eax
4230a5:	68 00 04 00 00       	push   $0x400
4230aa:	56                   	push   %esi
4230ab:	57                   	push   %edi
4230ac:	68 00 11 00 00       	push   $0x1100
4230b1:	ff 15 74 21 45 00    	call   *0x452174
4230b7:	85 c0                	test   %eax,%eax
4230b9:	74 b5                	je     0x423070
4230bb:	ff 75 fc             	push   -0x4(%ebp)
4230be:	56                   	push   %esi
4230bf:	68 78 02 41 00       	push   $0x410278
4230c4:	eb 91                	jmp    0x423057
4230c6:	be d0 18 45 00       	mov    $0x4518d0,%esi
4230cb:	eb 03                	jmp    0x4230d0
4230cd:	8d 49 00             	lea    0x0(%ecx),%ecx
4230d0:	6a 00                	push   $0x0
4230d2:	6a 00                	push   $0x0
4230d4:	57                   	push   %edi
4230d5:	68 90 2d 42 00       	push   $0x422d90
4230da:	6a 00                	push   $0x0
4230dc:	6a 00                	push   $0x0
4230de:	ff 15 a4 21 45 00    	call   *0x4521a4
4230e4:	89 06                	mov    %eax,(%esi)
4230e6:	85 c0                	test   %eax,%eax
4230e8:	0f 84 05 06 00 00    	je     0x4236f3
4230ee:	83 c6 04             	add    $0x4,%esi
4230f1:	81 fe f0 18 45 00    	cmp    $0x4518f0,%esi
4230f7:	7c d7                	jl     0x4230d0
4230f9:	8d 45 ec             	lea    -0x14(%ebp),%eax
4230fc:	50                   	push   %eax
4230fd:	ff 75 f0             	push   -0x10(%ebp)
423100:	ff 15 e0 20 45 00    	call   *0x4520e0
423106:	8b f0                	mov    %eax,%esi
423108:	83 fe ff             	cmp    $0xffffffff,%esi
42310b:	75 62                	jne    0x42316f
42310d:	ff 15 6c 20 45 00    	call   *0x45206c
423113:	85 c0                	test   %eax,%eax
423115:	74 58                	je     0x42316f
423117:	ff 15 6c 20 45 00    	call   *0x45206c
42311d:	6a 00                	push   $0x0
42311f:	6a 00                	push   $0x0
423121:	8b f0                	mov    %eax,%esi
423123:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
42312a:	8d 45 fc             	lea    -0x4(%ebp),%eax
42312d:	50                   	push   %eax
42312e:	68 00 04 00 00       	push   $0x400
423133:	56                   	push   %esi
423134:	6a 00                	push   $0x0
423136:	68 00 11 00 00       	push   $0x1100
42313b:	ff 15 74 21 45 00    	call   *0x452174
423141:	85 c0                	test   %eax,%eax
423143:	74 22                	je     0x423167
423145:	ff 75 fc             	push   -0x4(%ebp)
423148:	56                   	push   %esi
423149:	68 ec fa 40 00       	push   $0x40faec
42314e:	68 e8 04 41 00       	push   $0x4104e8
423153:	6a 02                	push   $0x2
423155:	e8 a6 a5 02 00       	call   0x44d700
42315a:	83 c4 04             	add    $0x4,%esp
42315d:	50                   	push   %eax
42315e:	ff 15 3c 23 45 00    	call   *0x45233c
423164:	83 c4 14             	add    $0x14,%esp
423167:	ff 75 fc             	push   -0x4(%ebp)
42316a:	e9 d7 05 00 00       	jmp    0x423746
42316f:	8b 0d 14 11 45 00    	mov    0x451114,%ecx
423175:	8b 45 ec             	mov    -0x14(%ebp),%eax
423178:	d3 ee                	shr    %cl,%esi
42317a:	8b 0d 18 11 45 00    	mov    0x451118,%ecx
423180:	d3 e0                	shl    %cl,%eax
423182:	03 c6                	add    %esi,%eax
423184:	a3 c4 18 45 00       	mov    %eax,0x4518c4
423189:	48                   	dec    %eax
42318a:	03 05 1c 11 45 00    	add    0x45111c,%eax
423190:	99                   	cltd
423191:	f7 3d 1c 11 45 00    	idivl  0x45111c
423197:	a3 c0 19 45 00       	mov    %eax,0x4519c0
42319c:	ff 15 54 22 45 00    	call   *0x452254
4231a2:	be 04 19 45 00       	mov    $0x451904,%esi
4231a7:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4231aa:	89 75 f4             	mov    %esi,-0xc(%ebp)
4231ad:	8d 49 00             	lea    0x0(%ecx),%ecx
4231b0:	8b 45 f0             	mov    -0x10(%ebp),%eax
4231b3:	89 46 50             	mov    %eax,0x50(%esi)
4231b6:	a1 1c 11 45 00       	mov    0x45111c,%eax
4231bb:	8b c8                	mov    %eax,%ecx
4231bd:	0f af 0d 10 11 45 00 	imul   0x451110,%ecx
4231c4:	99                   	cltd
4231c5:	8b f8                	mov    %eax,%edi
4231c7:	a1 10 11 45 00       	mov    0x451110,%eax
4231cc:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4231cf:	8b ca                	mov    %edx,%ecx
4231d1:	99                   	cltd
4231d2:	52                   	push   %edx
4231d3:	50                   	push   %eax
4231d4:	51                   	push   %ecx
4231d5:	57                   	push   %edi
4231d6:	e8 f5 a5 02 00       	call   0x44d7d0
4231db:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4231de:	33 f6                	xor    %esi,%esi
4231e0:	3b c8                	cmp    %eax,%ecx
4231e2:	0f 85 ad 04 00 00    	jne    0x423695
4231e8:	3b f2                	cmp    %edx,%esi
4231ea:	0f 85 a5 04 00 00    	jne    0x423695
4231f0:	6a 04                	push   $0x4
4231f2:	68 00 10 00 00       	push   $0x1000
4231f7:	51                   	push   %ecx
4231f8:	56                   	push   %esi
4231f9:	ff 15 8c 21 45 00    	call   *0x45218c
4231ff:	8b 75 f4             	mov    -0xc(%ebp),%esi
423202:	89 06                	mov    %eax,(%esi)
423204:	85 c0                	test   %eax,%eax
423206:	0f 84 50 04 00 00    	je     0x42365c
42320c:	6a 00                	push   $0x0
42320e:	6a 00                	push   $0x0
423210:	6a 00                	push   $0x0
423212:	6a 00                	push   $0x0
423214:	ff 15 2c 22 45 00    	call   *0x45222c
42321a:	89 46 4c             	mov    %eax,0x4c(%esi)
42321d:	85 c0                	test   %eax,%eax
42321f:	0f 84 fa 03 00 00    	je     0x42361f
423225:	8d 4e ec             	lea    -0x14(%esi),%ecx
423228:	e8 33 f7 ff ff       	call   0x422960
42322d:	83 c6 68             	add    $0x68,%esi
423230:	89 75 f4             	mov    %esi,-0xc(%ebp)
423233:	81 fe d4 19 45 00    	cmp    $0x4519d4,%esi
423239:	0f 8c 71 ff ff ff    	jl     0x4231b0
42323f:	68 64 03 41 00       	push   $0x410364
423244:	6a 27                	push   $0x27
423246:	68 04 05 41 00       	push   $0x410504
42324b:	ff 15 74 23 45 00    	call   *0x452374
423251:	83 c4 0c             	add    $0xc,%esp
423254:	68 30 05 41 00       	push   $0x410530
423259:	ff 15 74 23 45 00    	call   *0x452374
42325f:	83 c4 04             	add    $0x4,%esp
423262:	68 b8 05 41 00       	push   $0x4105b8
423267:	ff 15 74 23 45 00    	call   *0x452374
42326d:	83 c4 04             	add    $0x4,%esp
423270:	68 e8 c4 40 00       	push   $0x40c4e8
423275:	ff 15 74 23 45 00    	call   *0x452374
42327b:	8b 43 10             	mov    0x10(%ebx),%eax
42327e:	83 c4 04             	add    $0x4,%esp
423281:	a3 c8 18 45 00       	mov    %eax,0x4518c8
423286:	8b 43 0c             	mov    0xc(%ebx),%eax
423289:	c7 05 c4 19 45 00 00 	movl   $0x0,0x4519c4
423290:	00 00 00
423293:	6a 00                	push   $0x0
423295:	68 c8 00 00 00       	push   $0xc8
42329a:	ff 35 50 19 45 00    	push   0x451950
4232a0:	a3 c0 18 45 00       	mov    %eax,0x4518c0
4232a5:	ff 15 24 22 45 00    	call   *0x452224
4232ab:	3d 02 01 00 00       	cmp    $0x102,%eax
4232b0:	75 62                	jne    0x423314
4232b2:	6b 05 3c 15 45 00 64 	imul   $0x64,0x45153c,%eax
4232b9:	99                   	cltd
4232ba:	f7 3d c0 19 45 00    	idivl  0x4519c0
4232c0:	8b f0                	mov    %eax,%esi
4232c2:	83 fe 64             	cmp    $0x64,%esi
4232c5:	7c 05                	jl     0x4232cc
4232c7:	be 64 00 00 00       	mov    $0x64,%esi
4232cc:	2b 35 c4 19 45 00    	sub    0x4519c4,%esi
4232d2:	83 fe 02             	cmp    $0x2,%esi
4232d5:	7c 23                	jl     0x4232fa
4232d7:	d1 ee                	shr    $1,%esi
4232d9:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4232e0:	68 bc 3c 40 00       	push   $0x403cbc
4232e5:	ff 15 74 23 45 00    	call   *0x452374
4232eb:	83 05 c4 19 45 00 02 	addl   $0x2,0x4519c4
4232f2:	83 c4 04             	add    $0x4,%esp
4232f5:	83 ee 01             	sub    $0x1,%esi
4232f8:	75 e6                	jne    0x4232e0
4232fa:	6a 00                	push   $0x0
4232fc:	68 c8 00 00 00       	push   $0xc8
423301:	ff 35 50 19 45 00    	push   0x451950
423307:	ff 15 24 22 45 00    	call   *0x452224
42330d:	3d 02 01 00 00       	cmp    $0x102,%eax
423312:	74 9e                	je     0x4232b2
423314:	85 c0                	test   %eax,%eax
423316:	0f 85 c3 02 00 00    	jne    0x4235df
42331c:	be 80 19 45 00       	mov    $0x451980,%esi
423321:	6a 00                	push   $0x0
423323:	6a ff                	push   $0xffffffff
423325:	ff 76 38             	push   0x38(%esi)
423328:	ff 15 24 22 45 00    	call   *0x452224
42332e:	85 c0                	test   %eax,%eax
423330:	0f 85 a9 02 00 00    	jne    0x4235df
423336:	8b 06                	mov    (%esi),%eax
423338:	01 05 18 19 45 00    	add    %eax,0x451918
42333e:	8b 46 04             	mov    0x4(%esi),%eax
423341:	01 05 1c 19 45 00    	add    %eax,0x45191c
423347:	8b 46 08             	mov    0x8(%esi),%eax
42334a:	01 05 20 19 45 00    	add    %eax,0x451920
423350:	8b 46 0c             	mov    0xc(%esi),%eax
423353:	01 05 24 19 45 00    	add    %eax,0x451924
423359:	8b 46 10             	mov    0x10(%esi),%eax
42335c:	01 05 28 19 45 00    	add    %eax,0x451928
423362:	8b 4e 1c             	mov    0x1c(%esi),%ecx
423365:	8b 46 18             	mov    0x18(%esi),%eax
423368:	39 0d 34 19 45 00    	cmp    %ecx,0x451934
42336e:	77 1d                	ja     0x42338d
423370:	72 08                	jb     0x42337a
423372:	39 05 30 19 45 00    	cmp    %eax,0x451930
423378:	73 13                	jae    0x42338d
42337a:	a3 30 19 45 00       	mov    %eax,0x451930
42337f:	89 0d 34 19 45 00    	mov    %ecx,0x451934
423385:	8b 46 20             	mov    0x20(%esi),%eax
423388:	a3 38 19 45 00       	mov    %eax,0x451938
42338d:	8b 46 28             	mov    0x28(%esi),%eax
423390:	01 05 40 19 45 00    	add    %eax,0x451940
423396:	8b 46 2c             	mov    0x2c(%esi),%eax
423399:	01 05 44 19 45 00    	add    %eax,0x451944
42339f:	8b 46 30             	mov    0x30(%esi),%eax
4233a2:	39 05 48 19 45 00    	cmp    %eax,0x451948
4233a8:	73 05                	jae    0x4233af
4233aa:	a3 48 19 45 00       	mov    %eax,0x451948
4233af:	8b 46 34             	mov    0x34(%esi),%eax
4233b2:	39 05 4c 19 45 00    	cmp    %eax,0x45194c
4233b8:	76 05                	jbe    0x4233bf
4233ba:	a3 4c 19 45 00       	mov    %eax,0x45194c
4233bf:	83 c6 68             	add    $0x68,%esi
4233c2:	81 fe e8 19 45 00    	cmp    $0x4519e8,%esi
4233c8:	0f 8c 53 ff ff ff    	jl     0x423321
4233ce:	ff 15 54 22 45 00    	call   *0x452254
4233d4:	be 64 00 00 00       	mov    $0x64,%esi
4233d9:	8b f8                	mov    %eax,%edi
4233db:	2b 35 c4 19 45 00    	sub    0x4519c4,%esi
4233e1:	83 fe 02             	cmp    $0x2,%esi
4233e4:	7c 24                	jl     0x42340a
4233e6:	d1 ee                	shr    $1,%esi
4233e8:	eb 06                	jmp    0x4233f0
4233ea:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
4233f0:	68 bc 3c 40 00       	push   $0x403cbc
4233f5:	ff 15 74 23 45 00    	call   *0x452374
4233fb:	83 05 c4 19 45 00 02 	addl   $0x2,0x4519c4
423402:	83 c4 04             	add    $0x4,%esp
423405:	83 ee 01             	sub    $0x1,%esi
423408:	75 e6                	jne    0x4233f0
42340a:	68 38 06 41 00       	push   $0x410638