Function at 0x10022942
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007d1e5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2f4
push esi
mov dword [ebp - 0x2bc], 0xeb9ae77a
mov dword [ebp - 0x288], 0xffffffff
mov dword [ebp - 0x28c], 0x9a130dfd
mov dword [ebp - 0x1e4], 8
mov dword [ebp - 0x214], 0xb839bf5b
mov dword [ebp - 0x29c], 0xddb2
mov dword [ebp - 0x230], 0xffffffff
mov dword [ebp - 0x5c], 0
jmp 0x100229b7
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 4
jge 0x100229cd
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0x300], 9
jmp 0x100229b0
mov byte [ebp - 0x2b], 0
movzx eax, byte [ebp - 0x2b]
test eax, eax
je 0x100229e1
push 1
call fcn.10021601
pop ecx
xor eax, eax
inc eax
sub eax, dword [ebp - 0x1e4]
cmp eax, dword [ebp - 0x214]
jne 0x100229fe
mov dword [ebp - 0xf0], 1
jmp 0x10022a05
and dword [ebp - 0xf0], 0
cmp dword [ebp - 0xf0], 0x885a1ec8
jne 0x10022a1d
mov dword [ebp - 0x1cc], 1
jmp 0x10022a24
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x230], eax
jmp 0x10022a4c
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
add eax, 4
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
add eax, 4
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp dword [eax], 0
je 0x10023cf3
mov dword [ebp - 0x40], 2
mov dword [ebp - 0x4c], 0x2baef6e2
mov dword [ebp - 0x94], 3
mov dword [ebp - 0x238], 0x260d
mov dword [ebp - 0x88], 0x1c1d99ea
mov dword [ebp - 0x240], 1
mov dword [ebp - 0x224], 0x5807c1ab
mov dword [ebp - 0x74], 0
jmp 0x10022aaa
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 2
jge 0x10022ac0
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x1c4], 0xc022
jmp 0x10022aa3
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x2a4], eax
imul eax, dword [ebp - 0x4c], 0xffffffff
cmp eax, dword [ebp - 0x40]
jle 0x10022ae4
mov dword [ebp - 0x1d4], 1
jmp 0x10022aeb
and dword [ebp - 0x1d4], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x1d4], eax
jg 0x10022b02
mov dword [ebp - 0x198], 1
jmp 0x10022b09
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x198], eax
je 0x10022b20
mov dword [ebp - 0xc8], 1
jmp 0x10022b27
and dword [ebp - 0xc8], 0
cmp dword [ebp - 0xc8], 0xfffffffe
jne 0x10022b3c
mov dword [ebp - 0x1a0], 1
jmp 0x10022b43
and dword [ebp - 0x1a0], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1c4]
cmp dword [ebp - 0x1a0], eax
jne 0x10022b64
mov dword [ebp - 0xd0], 1
jmp 0x10022b6b
and dword [ebp - 0xd0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1c4]
cmp dword [ebp - 0xd0], eax
jg 0x10022b8c
mov dword [ebp - 0x1a8], 1
jmp 0x10022b93
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
inc eax
jne 0x10022bc0
cmp dword [ebp - 0x238], 0
jne 0x10022bc0
and dword [ebp - 0xd8], 0
jmp 0x10022bca
mov dword [ebp - 0xd8], 1
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x10022bf1
cmp dword [ebp - 0x88], 0
jne 0x10022bf1
and dword [ebp - 0x1b0], 0
jmp 0x10022bfb
mov dword [ebp - 0x1b0], 1
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x1b0]
jl 0x10022c18
cmp dword [ebp - 0x94], 0
jne 0x10022c18
and dword [ebp - 0x1b8], 0
jmp 0x10022c22
mov dword [ebp - 0x1b8], 1
cmp dword [ebp - 0x1b8], 0x668d
jge 0x10022c32
xor eax, eax
jne 0x10022c4b
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x1c4], 0
jne 0x10022c4b
and dword [ebp - 0xe0], 0
jmp 0x10022c55
mov dword [ebp - 0xe0], 1
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0xe0]
jl 0x10022c6c
mov dword [ebp - 0x1b4], 1
jmp 0x10022c73
and dword [ebp - 0x1b4], 0
imul eax, dword [ebp - 0x1b4], 0x91cb
inc eax
inc eax
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x1c4]
jge 0x10022c9a
mov dword [ebp - 0xf4], 1
jmp 0x10022ca1
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0x240], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1c4]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0x80000000
je 0x10022f55
mov dword [ebp - 0x1f8], 0x3acb6d64
mov dword [ebp - 0x10c], 0xffffffff
mov dword [ebp - 0x1c8], 0x2c78ef8a
mov dword [ebp - 0x64], 0
jmp 0x10022d00
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 1
jge 0x10022d13
mov eax, dword [ebp - 0x64]
mov dword [ebp + eax*4 - 0x28], 0xfffffffe
jmp 0x10022cf9
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x28], 3
jmp 0x10022d38
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x28]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x28], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x28], 0xfffffff5
je 0x10022f0d
mov dword [ebp - 0xac], 0x7e4fc22
mov dword [ebp - 0x6c], 0xf4c59cdc
mov dword [ebp - 0x234], 0xe9f9
mov dword [ebp - 0x7c], 0
jmp 0x10022d74
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 3
jge 0x10022d8a
mov eax, dword [ebp - 0x7c]
mov dword [ebp + eax*4 - 0x274], 0x623b4709
jmp 0x10022d6d
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x28], 0x3ccd
jge 0x10022da6
mov dword [ebp - 0x164], 1
jmp 0x10022dad
and dword [ebp - 0x164], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x274]
cmp dword [ebp - 0x164], eax
jle 0x10022dcd
mov dword [ebp - 0xfc], 1
jmp 0x10022dd4
and dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0x6c]
cmp eax, dword [ebp - 0xfc]
je 0x10022deb
mov dword [ebp - 0x20c], 1
jmp 0x10022df2
and dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x2ac], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x274], 0
je 0x10022e1f
mov eax, 0x7f4e
test eax, eax
je 0x10022e1f
mov dword [ebp - 0x19c], 1
jmp 0x10022e26
and dword [ebp - 0x19c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x28]
mov ecx, dword [ebp - 0x19c]
lea eax, [ecx + eax + 0x5f40]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x274]
jl 0x10022e58
mov dword [ebp - 0x1f0], 1
jmp 0x10022e5f
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x2b4], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x28], 1
jne 0x10022e81
mov dword [ebp - 0x104], 1
jmp 0x10022e88
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0xac]
dec eax
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
cmp eax, dword [ebp - 0x104]
jne 0x10022eaf
mov dword [ebp - 0x16c], 1
jmp 0x10022eb6
and dword [ebp - 0x16c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x28]
cmp dword [ebp - 0x16c], eax
jg 0x10022ed4
mov dword [ebp - 0x220], 1
jmp 0x10022edb
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x6c], eax
jmp 0x10022d23
mov byte [ebp - 0x2a], 0
push 0
lea eax, [ebp - 0x2a]
push eax
push 0x310b
call fcn.10024ad9
add esp, 0xc
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0xffff
push eax
mov eax, dword [ebp + 8]
push dword [eax]
push 0xbf44
push 0xa3f4
call fcn.1004f12c
pop ecx
pop ecx
call eax
mov ecx, dword [ebp + 0x14]
mov ecx, dword [ecx]
mov dword [ecx], eax
jmp 0x1002376b
mov dword [ebp - 0x268], 8
mov dword [ebp - 0x264], 8
mov dword [ebp - 0x260], 8
mov dword [ebp - 0x25c], 8
lea ecx, [ebp - 0xa5]
call fcn.1000a5b5
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x268]
push eax
lea ecx, [ebp - 0x2d4]
call fcn.1000a91c
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0xa4]
call fcn.1000a8e2
and dword [ebp - 4], 0
mov dword [ebp - 0x30], 0x3876a47c
mov dword [ebp - 0x50], 0x5a74
mov dword [ebp - 0x10], 0xf47f28a9
push 0
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
and dword [eax], 0
jmp 0x10023001
push 0
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x114]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x114]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
cmp dword [eax], 0xffffffed
jle 0x100236c9
mov dword [ebp - 0x18], 0x654fddd3
mov dword [ebp - 0x90], 5
push 2
lea ecx, [ebp - 0x24c]
call fcn.1000a8a0
mov byte [ebp - 4], 1
mov dword [ebp - 0x21c], 1
mov dword [ebp - 0x48], 0
jmp 0x10023053
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 3
jge 0x10023069
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0xb8], 0x53fc2f92
jmp 0x1002304c
push 1
lea eax, [ebp - 0x48]
push eax
push 0x57dc
push 0x6fac
lea eax, [ebp - 0x24c]
push eax
call fcn.10021636
add esp, 0x14
cmp dword [ebp - 0x18], 0
je 0x1002339e
mov dword [ebp - 0x24], 0x5467356a
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x134], 0xfffa
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x2c4], eax
push 3
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0
jne 0x100230e7
mov dword [ebp - 0x174], 1
jmp 0x100230ee
and dword [ebp - 0x174], 0
push 2
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
mov eax, dword [eax]
cmp eax, dword [ebp - 0x174]
jg 0x10023111
mov dword [ebp - 0x8c], 1
jmp 0x10023118
and dword [ebp - 0x8c], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x8c]
mov dword [ebp + eax - 0xb8], ecx
push 0
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
mov ecx, dword [ebp - 0x8c]
imul ecx, dword [eax]
imul ecx, dword [ebp - 0x24]
cmp ecx, 1
jae 0x10023156
mov dword [ebp - 0x200], 1
jmp 0x1002315d
and dword [ebp - 0x200], 0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2cc], eax
mov eax, 0xfcc0
test eax, eax
jne 0x1002317b
mov dword [ebp - 0x22c], 1
jmp 0x10023182
and dword [ebp - 0x22c], 0
push 0
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
cmp dword [eax], 0
je 0x100231a7
push 8
pop eax
test eax, eax
je 0x100231a7
mov dword [ebp - 0x11c], 1
jmp 0x100231ae
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x11c]
sub eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x18]
jge 0x100231c8
mov dword [ebp - 0x1a4], 1
jmp 0x100231cf
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x1a4]
sub eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x24]
jl 0x100231e9
mov dword [ebp - 0x124], 1
jmp 0x100231f0
and dword [ebp - 0x124], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x124], eax
jle 0x10023207
mov dword [ebp - 0x17c], 1
jmp 0x1002320e
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x10]
je 0x10023256
mov dword [ebp - 0x208], 6
push 0x1df4
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x208]
push eax
push 1
push 0xe23
call fcn.100216dd
add esp, 0x14
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
jmp 0x10023373
mov dword [ebp - 0x12c], 9
mov dword [ebp - 0x12c], 0x8b72
mov eax, dword [ebp - 0x134]
cmp dword [ebp - 0x12c], eax
jl 0x10023284
mov dword [ebp - 0x23c], 1
jmp 0x1002328b
and dword [ebp - 0x23c], 0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c8], eax
push 1
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xb8]
mov dword [ebp - 0x294], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xb8], 0x83781cdf
jbe 0x100232d2
mov dword [ebp - 0x1bc], 1
jmp 0x100232d9
and dword [ebp - 0x1bc], 0
imul eax, dword [ebp - 0x1bc], 0xadcf
cmp eax, dword [ebp - 0x18]
jne 0x100232f4
mov dword [ebp - 0x184], 1
jmp 0x100232fb
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 0x184]
add eax, ecx
je 0x10023321
cmp dword [ebp - 0x30], 0
je 0x10023321
mov dword [ebp - 0x13c], 1
jmp 0x10023328
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x84]
cmp eax, dword [ebp - 0x13c]
jge 0x10023342
mov dword [ebp - 0x1ac], 1
jmp 0x10023349
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x90]
cmp dword [ebp - 0x1ac], eax
jne 0x10023363
mov dword [ebp - 0x144], 1
jmp 0x1002336a
and dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x30], eax
push 0
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
cmp dword [eax], 0
je 0x10023399
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x24c]
call fcn.1000a908
jmp 0x100236c9
jmp 0x100236b5
mov dword [ebp - 0x210], 0xffffffff
mov dword [ebp - 0x78], 0x289f16c4
mov dword [ebp - 0x50], 0x1b
jmp 0x100233bf
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0x30
jl 0x100236b5
push 1
lea ecx, [ebp - 0xec]
call fcn.1000a8a0
mov byte [ebp - 4], 2
mov dword [ebp - 0x290], 0x591f28f6
mov dword [ebp - 0x80], 0
jmp 0x100233f4
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 1
jge 0x10023410
push dword [ebp - 0x80]
lea ecx, [ebp - 0xec]
call fcn.1000a90d
mov dword [eax], 0xfffffffe
jmp 0x100233ed
push 0
lea ecx, [ebp - 0xec]
call fcn.1000a90d
cmp dword [eax], 0
je 0x100234da
cmp dword [ebp - 0x210], 0
jne 0x1002348d
cmp dword [ebp - 0x18], 1
jle 0x10023441
mov dword [ebp - 0x18c], 1
jmp 0x10023448
and dword [ebp - 0x18c], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x18c]
mov dword [ebp + eax - 0xb8], ecx
push 0
lea ecx, [ebp - 0xec]
call fcn.1000a90d
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xb8]
mov dword [ebp - 0x2b0], eax
cmp dword [ebp - 0x78], 0x8724
jg 0x1002348d
and dword [ebp - 0x14c], 0
jmp 0x10023497
mov dword [ebp - 0x14c], 1
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 1
jb 0x100234b8
mov dword [ebp - 0x1d0], 1
jmp 0x100234bf
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x18], 0
je 0x100234da
mov dword [ebp - 0x154], 1
jmp 0x100234e1
and dword [ebp - 0x154], 0
push 0
lea ecx, [ebp - 0xa4]
call fcn.1000a90d
mov esi, dword [ebp - 0x154]
add esi, dword [eax]
push 0
lea ecx, [ebp - 0xec]
call fcn.1000a90d
sub esi, dword [eax]
cmp esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x194], eax
push 1
lea ecx, [ebp - 0x24c]
call fcn.1000a90d
mov ecx, dword [ebp - 0x194]
mov dword [eax], ecx
mov eax, dword [ebp - 0x21c]
cmp dword [ebp - 0x194], eax
jg 0x10023540
mov dword [ebp - 0x15c], 1
jmp 0x10023547
and dword [ebp - 0x15c], 0
cmp dword [ebp - 0x15c], 1
jne 0x1002355c
mov dword [ebp - 0xdc], 1
jmp 0x10023563
and dword [ebp - 0xdc], 0
cmp dword [ebp - 0xdc], 8
jb 0x10023578
mov dword [ebp - 0xbc], 1
jmp 0x1002357f
and dword [ebp - 0xbc], 0
push 0
lea ecx, [ebp - 0xec]
call fcn.1000a90d
mov ecx, dword [ebp - 0xbc]
mov dword [eax], ecx
mov dword [ebp - 0x10], 2
jmp 0x100235a4
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jl 0x100236a1
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0xb8]
cmp dword [ebp + eax*4 - 0xb8], ecx
jne 0x100235d0
mov dword [ebp - 0x218], 1
jmp 0x100235d7
and dword [ebp - 0x218], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x30], 6
mov esi, dword [ebp - 0x30]
push 0
lea ecx, [ebp - 0xec]
call fcn.1000a90d
cmp esi, dword [eax]
je 0x1002360d
cmp dword [ebp - 0x78], 0
je 0x1002360d
mov dword [ebp - 0xf8], 1
jmp 0x10023614
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0xb8]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0xb8]
add ecx, dword [ebp - 0xf8]
sub eax, ecx
cmp eax, 0xeab19957
jbe 0x10023643
mov dword [ebp - 0x100], 1
jmp 0x1002364a
and dword [ebp - 0x100], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xb8]
cmp dword [ebp - 0x100], eax
jge 0x1002366b
mov dword [ebp - 0x108], 1
jmp 0x10023672
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x108]
mov dword [ebp + eax*4 - 0xb8], ecx
lea eax, [ebp - 0x78]
push eax
push 0x4a67
lea eax, [ebp - 0xec]
push eax
push 0
call fcn.100228d6
add esp, 0x10
jmp 0x1002359d
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xec]
call fcn.1000a908
jmp 0x100233b8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x24c]
call fcn.1000a908
jmp 0x10022fdd
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa4]
call fcn.1000a908
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov ecx, dword [ebp + 0xc]
add ecx, dword [eax]
mov dword [ebp - 0x228], ecx
mov dword [ebp - 0x70], 0xfffffffd
mov dword [ebp - 0x54], 0
jmp 0x100236ff
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jge 0x10023715
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x2e0], 0xf99f
jmp 0x100236f8
mov dword [ebp - 0x70], 2
jmp 0x10023725
mov eax, dword [ebp - 0x70]
dec eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jl 0x10023743
mov byte [ebp - 0x31], 0
movzx eax, byte [ebp - 0x31]
test eax, eax
je 0x10023741
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetFileSize]
jmp 0x1002371e
mov eax, dword [ebp - 0x228]
inc eax
inc eax
push eax
mov eax, dword [ebp + 8]
push dword [eax]
push 0xbf44
push 0xa3f4
call fcn.1004f12c
pop ecx
pop ecx
call eax
mov ecx, dword [ebp + 0x14]
mov ecx, dword [ecx]
mov dword [ecx], eax
mov dword [ebp - 0x60], 0xfffffffc
mov dword [ebp - 0x1f4], 0xaad8530d
mov dword [ebp - 0x20], 0x1ba028ea
mov dword [ebp - 0x38], 0x5fdc
push 1
lea ecx, [ebp - 0x1e0]
call fcn.1000a8a0
mov dword [ebp - 4], 3
mov dword [ebp - 0x58], 0
jmp 0x100237ae
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 1
jge 0x100237ca
push dword [ebp - 0x58]
lea ecx, [ebp - 0x1e0]
call fcn.1000a90d
mov dword [eax], 8
jmp 0x100237a7
mov byte [ebp - 0x29], 0
push 0x639b
push 0x5773
lea eax, [ebp - 0x29]
push eax
push 0x1933
push 1
push 0x3575
push 0x20cb
call fcn.1002175e
add esp, 0x1c
mov eax, dword [ebp - 0x60]
imul eax, dword [ebp - 0x60]
test eax, eax
jne 0x100238d7
push 3
lea ecx, [ebp - 0x280]
call fcn.1000a8a0
mov byte [ebp - 4], 4
mov dword [ebp - 0x1c], 0
jmp 0x10023825
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x10023841
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x280]
call fcn.1000a90d
mov dword [eax], 0xb8ee41b
jmp 0x1002381e
mov dword [ebp - 0x1c], 0
jmp 0x10023851
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x10023867
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x2f0], 0xf3617394
jmp 0x1002384a
mov dword [ebp - 0x60], 0x4438bea1
mov esi, dword [ebp - 0x60]
push 0
lea ecx, [ebp - 0x280]
call fcn.1000a90d
sub esi, dword [eax]
mov dword [ebp - 0x1e8], esi
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x1e8]
cmp eax, dword [ebp - 0x1ec]
jl 0x100238b0
mov dword [ebp - 0x110], 1
jmp 0x100238b7
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x1f4], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x280]
call fcn.1000a908
jmp 0x100239f4
mov dword [ebp - 0x128], 1
mov dword [ebp - 0x38], 0
jmp 0x100238f1
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jg 0x100239f4
mov byte [ebp - 0x2c], 0
movzx eax, byte [ebp - 0x2c]
test eax, eax
je 0x1002390f
push 1
call fcn.10021c3d
pop ecx
mov dword [ebp - 0x20], 0
jmp 0x1002391f
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x100239ef
cmp dword [ebp - 0x128], 0x9d66
je 0x10023941
mov dword [ebp - 0x118], 1
jmp 0x10023948
and dword [ebp - 0x118], 0
mov esi, dword [ebp - 0x20]
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1e0]
call fcn.1000a90d
sub esi, dword [eax]
cmp esi, dword [ebp - 0x118]
je 0x1002396f
mov dword [ebp - 0x120], 1
jmp 0x10023976
and dword [ebp - 0x120], 0
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1e0]
call fcn.1000a90d
mov eax, dword [eax]
add eax, dword [ebp - 0x120]
cmp eax, dword [ebp - 0x128]
jl 0x100239b3
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1e0]
call fcn.1000a90d
cmp dword [eax], 0
je 0x100239b3
mov dword [ebp - 0x130], 1
jmp 0x100239ba
and dword [ebp - 0x130], 0
mov esi, dword [ebp - 0x130]
add esi, 0x29207964
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1e0]
call fcn.1000a90d
mov dword [eax], esi
mov byte [ebp - 0x39], 0
movzx eax, byte [ebp - 0x39]
test eax, eax
je 0x100239ea
push 1
call fcn.10021c87
pop ecx
jmp 0x10023918
jmp 0x100238ea
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1e0]
call fcn.1000a908
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
cmp dword [eax], 0
jne 0x10023cee
push 0x3eba
push 0x522f
push 1
call fcn.10021cdc
add esp, 0xc
push 0x451d
lea eax, [ebp + 0x18]
push eax
push 0x28e2
push 1
call fcn.100228d6
add esp, 0x10
mov dword [ebp - 0x14], 0xa1f9
mov dword [ebp - 0x148], 0xffffffff
mov dword [ebp - 0x44], 0x85d0
mov dword [ebp - 0x98], 0xfffffffb
mov dword [ebp - 0x204], 0xfffffff9
mov dword [ebp - 0x68], 0
jmp 0x10023a79
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 2
jge 0x10023a8f
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x254], 0
jmp 0x10023a72
mov eax, 0xd06721f7
test eax, eax
je 0x10023acc
cmp dword [ebp - 0x14], 0
jne 0x10023aad
cmp dword [ebp - 0x14], 0
jne 0x10023aad
and dword [ebp - 0x138], 0
jmp 0x10023ab7
mov dword [ebp - 0x138], 1
cmp dword [ebp - 0x138], 0
je 0x10023acc
mov dword [ebp - 0x140], 1
jmp 0x10023ad3
and dword [ebp - 0x140], 0
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2a0], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x14]
mov dword [ebp + eax - 0x254], ecx
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x14]
cmp dword [ebp + eax - 0x254], ecx
jge 0x10023b22
mov dword [ebp - 0x150], 1
jmp 0x10023b29
and dword [ebp - 0x150], 0
cmp dword [ebp - 0x150], 0x8123
jle 0x10023b41
mov dword [ebp - 0x158], 1
jmp 0x10023b48
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x158], eax
jl 0x10023b5f
mov dword [ebp - 0x160], 1
jmp 0x10023b66
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x160], eax
jne 0x10023b7d
mov dword [ebp - 0x168], 1
jmp 0x10023b84
and dword [ebp - 0x168], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x168], eax
je 0x10023b9b
mov dword [ebp - 0x170], 1
jmp 0x10023ba2
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x170]
sub eax, 0x807c
jne 0x10023bbb
mov dword [ebp - 0x178], 1
jmp 0x10023bc2
and dword [ebp - 0x178], 0
cmp dword [ebp - 0x178], 0xffff
ja 0x10023bda
mov dword [ebp - 0x1fc], 1
jmp 0x10023be1
and dword [ebp - 0x1fc], 0
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x98], 1
jl 0x10023c0e
cmp dword [ebp - 0x14], 0
jne 0x10023c0e
and dword [ebp - 0x180], 0
jmp 0x10023c18
mov dword [ebp - 0x180], 1
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x180], eax
jg 0x10023c2f
mov dword [ebp - 0x188], 1
jmp 0x10023c36
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x188], eax
je 0x10023c4d
mov dword [ebp - 0x190], 1
jmp 0x10023c54
and dword [ebp - 0x190], 0
mov eax, 0xdd44
sub eax, dword [ebp - 0x190]
cmp dword [ebp - 0x14], eax
jge 0x10023c70
mov dword [ebp - 0xc0], 1
jmp 0x10023c77
and dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0xc0]
cmp eax, 0x92e7
jl 0x10023c93
mov dword [ebp - 0xc4], 1
jmp 0x10023c9a
and dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0x98]
add eax, dword [ebp - 0xc4]
jne 0x10023cb4
mov dword [ebp - 0xcc], 1
jmp 0x10023cbb
and dword [ebp - 0xcc], 0
imul eax, dword [ebp - 0xcc], 0xc35c
cmp eax, dword [ebp - 0x14]
jge 0x10023cd6
mov dword [ebp - 0xd4], 1
jmp 0x10023cdd
and dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0xd4]
mov dword [ebp - 0x204], eax
jmp 0x10023cf3
jmp 0x10022a32
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret