Function at 0x10012431
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x24
mov eax, dword [esp + 0x28]
push ebx
push ebp
push esi
lea ecx, [eax + 4]
lea ebp, [eax + 0x5ec]
mov dword [esp + 0x10], ecx
mov eax, dword [eax]
lea edx, [ecx + 0x1e0]
push edi
mov dword [esp + 0x30], edx
mov dword [esp + 0x1c], ebp
mov ebx, dword [eax + 0x14]
mov edi, dword [eax + 0xc]
mov esi, dword [eax + 4]
mov edx, dword [eax + 8]
add ebx, dword [eax + 0x10]
lea eax, [ebp + 1]
mov dword [esp + 0x28], eax
mov eax, dword [ecx + 0x38]
mov ebp, dword [ecx + 0x20]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x1c]
movzx ecx, byte [eax]
movzx eax, byte [ebp]
add ecx, eax
imul eax, ecx, 5
mov ecx, dword [esp + 0x14]
add eax, dword [ecx + 0x40]
mov ecx, dword [ecx + 0x3c]
mov dword [esp + 0x18], ecx
lea ecx, [esi - 1]
mov dword [esp + 0x24], eax
movzx eax, byte [eax]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jb 0x10012b0c
sub edx, eax
sub esi, ecx
mov ecx, 0x80
jmp 0x100124d6
add esi, esi
add edx, edx
sub edi, 1
jne 0x100124d6
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x100124c4
mov eax, dword [esp + 0x14]
xor ecx, ecx
inc ecx
mov byte [ebp], cl
mov ebp, dword [esp + 0x24]
mov eax, dword [eax + 0x1c]
mov byte [eax], cl
lea eax, [esi - 1]
movzx ecx, byte [ebp + 2]
movzx ebp, byte [ebp + 3]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x1001259a
mov ebp, 0x80
mov esi, ecx
cmp ecx, ebp
jae 0x10012532
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001252e
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x1001251c
mov eax, dword [esp + 0x1c]
lea ebp, [esi + 1]
shr ebp, 1
movzx eax, byte [eax + 0x41]
add eax, 6
imul ecx, eax, 0xb
mov eax, ebp
shl eax, 0x18
add ecx, dword [esp + 0x20]
dec edi
cmp edx, eax
jb 0x10012572
mov eax, ebp
sub esi, ebp
shl eax, 0x18
add esi, esi
sub edx, eax
add edx, edx
test edi, edi
jne 0x1001256d
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
or ebp, 0xffffffff
jmp 0x1001258b
add edx, edx
lea esi, [ebp*2]
test edi, edi
jne 0x10012588
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
xor ebp, ebp
inc ebp
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax], bp
jmp 0x10012b4d
sub edx, eax
sub esi, ecx
mov ecx, 0x80
jmp 0x100125b7
add esi, esi
add edx, edx
sub edi, 1
jne 0x100125b7
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x100125a5
mov eax, dword [esp + 0x18]
lea ecx, [esi - 1]
imul ecx, ebp
movzx ebp, byte [eax + 6]
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x10012791
mov ebp, 0x80
jmp 0x100125f8
add ecx, ecx
add edx, edx
sub edi, 1
jne 0x100125f8
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ecx, ebp
jb 0x100125e6
mov eax, dword [esp + 0x24]
movzx esi, byte [eax + 4]
lea eax, [ecx - 1]
imul esi, eax
mov eax, dword [esp + 0x18]
movzx ebp, byte [eax + 5]
add esi, 0x100
shr esi, 8
mov eax, esi
shl eax, 0x18
cmp edx, eax
jae 0x10012693
mov ecx, 0x80
jmp 0x1001263d
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001263d
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x1001262b
lea ecx, [esi + 1]
shr ecx, 1
dec edi
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jb 0x10012670
mov eax, ecx
sub esi, ecx
shl eax, 0x18
sub edx, eax
add edx, edx
test edi, edi
jne 0x10012668
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
push 0xfffffffffffffffe
pop ecx
jmp 0x10012aec
add edx, edx
test edi, edi
jne 0x1001267f
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x14]
mov esi, ecx
push 2
pop ebp
mov eax, dword [eax + 4]
mov word [eax], bp
jmp 0x10012af6
sub edx, eax
sub ecx, esi
mov esi, 0x80
jmp 0x100126b0
add ecx, ecx
add edx, edx
sub edi, 1
jne 0x100126b0
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ecx, esi
jb 0x1001269e
lea eax, [ecx - 1]
imul eax, ebp
mov ebp, 0x80
add eax, 0x100
shr eax, 8
mov esi, eax
shl esi, 0x18
cmp edx, esi
jae 0x100126f8
mov ecx, eax
cmp eax, ebp
jae 0x100126ec
add ecx, ecx
add edx, edx
sub edi, 1
jne 0x100126e8
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ecx, ebp
jb 0x100126d6
push 3
mov dword [esp + 0x28], 0xfffffffd
jmp 0x1001271e
sub edx, esi
sub ecx, eax
jmp 0x10012710
add ecx, ecx
add edx, edx
sub edi, 1
jne 0x10012710
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ecx, ebp
jb 0x100126fe
push 4
mov dword [esp + 0x28], 0xfffffffc
pop ebp
lea esi, [ecx + 1]
shr esi, 1
dec edi
mov eax, esi
shl eax, 0x18
cmp edx, eax
jb 0x10012756
mov eax, esi
sub ecx, esi
shl eax, 0x18
sub edx, eax
add edx, edx
test edi, edi
jne 0x10012746
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
mov eax, dword [eax + 4]
mov word [eax], si
jmp 0x10012771
add edx, edx
test edi, edi
jne 0x10012765
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x14]
mov ecx, esi
mov eax, dword [eax + 4]
mov word [eax], bp
mov eax, dword [esp + 0x1c]
lea esi, [ecx + ecx]
movzx eax, byte [eax + 0x41]
add eax, 0xc
imul eax, eax, 0xb
add eax, dword [esp + 0x20]
mov dword [esp + 0x18], eax
mov ecx, eax
jmp 0x10012b4d
sub edx, eax
sub esi, ecx
mov ecx, 0x80
jmp 0x100127ae
add esi, esi
add edx, edx
sub edi, 1
jne 0x100127ae
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x1001279c
mov ecx, dword [esp + 0x18]
lea eax, [esi - 1]
imul eax, ebp
movzx ebp, byte [ecx + 8]
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jae 0x1001288e
mov ebp, 0x80
mov esi, eax
cmp eax, ebp
jae 0x100127f6
add esi, esi
add edx, edx
sub edi, 1
jne 0x100127f2
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x100127e0
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax + 7]
lea eax, [esi - 1]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x10012852
mov esi, ecx
cmp ecx, ebp
jae 0x10012832
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001282e
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x1001281c
movzx ecx, word [0x1001f9f2]
mov eax, 0x1001f9f4
movzx ebp, word [0x1001f9f0]
mov dword [esp + 0x18], 0x1001f9f3
jmp 0x10012a3d
sub edx, eax
sub esi, ecx
jmp 0x1001286a
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001286a
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10012858
movzx ecx, word [0x1001fa02]
mov eax, 0x1001fa04
movzx ebp, word [0x1001fa00]
mov dword [esp + 0x18], 0x1001fa03
jmp 0x10012a3d
sub edx, ecx
sub esi, eax
mov ecx, 0x80
jmp 0x100128ab
add esi, esi
add edx, edx
sub edi, 1
jne 0x100128ab
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012899
mov ecx, dword [esp + 0x18]
lea eax, [esi - 1]
imul eax, ebp
movzx ebp, byte [ecx + 0xa]
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jae 0x1001298b
mov ebp, 0x80
mov esi, eax
cmp eax, ebp
jae 0x100128f3
add esi, esi
add edx, edx
sub edi, 1
jne 0x100128ef
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x100128dd
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax + 9]
lea eax, [esi - 1]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x1001294f
mov esi, ecx
cmp ecx, ebp
jae 0x1001292f
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001292b
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10012919
movzx ecx, word [0x1001fa12]
mov eax, 0x1001fa14
movzx ebp, word [0x1001fa10]
mov dword [esp + 0x18], 0x1001fa13
jmp 0x10012a3d
sub edx, eax
sub esi, ecx
jmp 0x10012967
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012967
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10012955
movzx ecx, word [0x1001fa22]
mov eax, 0x1001fa24
movzx ebp, word [0x1001fa20]
mov dword [esp + 0x18], 0x1001fa23
jmp 0x10012a3d
sub edx, ecx
sub esi, eax
mov ecx, 0x80
jmp 0x100129a8
add esi, esi
add edx, edx
sub edi, 1
jne 0x100129a8
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012996
lea eax, [esi - 1]
imul eax, ebp
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jae 0x10012a01
mov ecx, 0x80
mov esi, eax
cmp eax, ecx
jae 0x100129e4
add esi, esi
add edx, edx
sub edi, 1
jne 0x100129e0
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x100129ce
movzx ecx, word [0x1001fa32]
mov eax, 0x1001fa34
movzx ebp, word [0x1001fa30]
mov dword [esp + 0x18], 0x1001fa33
jmp 0x10012a3d
sub edx, ecx
sub esi, eax
mov ecx, 0x80
jmp 0x10012a1e
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012a1e
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012a0c
movzx ecx, word [0x1001fa42]
mov eax, 0x1001fa44
movzx ebp, word [0x1001fa40]
mov dword [esp + 0x18], 0x1001fa43
movsx ecx, cx
movzx ebp, bp
mov dword [esp + 0x10], ebp
movzx ebp, byte [eax + ecx]
lea eax, [esi - 1]
imul ebp, eax
mov eax, dword [esp + 0x18]
add ebp, 0x100
sar ebp, 8
movzx eax, byte [eax + ecx]
mov dword [esp + 0x24], eax
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jb 0x10012a7e
sub edx, eax
sub esi, ebp
xor eax, eax
mov ebp, esi
inc eax
shl eax, cl
add dword [esp + 0x10], eax
mov esi, 0x80
jmp 0x10012a97
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x10012a97
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, esi
jb 0x10012a85
sub ecx, 1
mov esi, ebp
js 0x10012aaa
dec ebp
imul ebp, dword [esp + 0x24]
jmp 0x10012a51
inc ebp
shr ebp, 1
dec edi
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jb 0x10012ad7
mov eax, ebp
sub esi, ebp
shl eax, 0x18
sub edx, eax
add edx, edx
test edi, edi
jne 0x10012acf
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov ecx, dword [esp + 0x10]
neg ecx
jmp 0x10012aec
add edx, edx
test edi, edi
jne 0x10012ae6
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov ecx, dword [esp + 0x10]
mov esi, ebp
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax], cx
mov eax, dword [esp + 0x1c]
movzx eax, byte [eax + 0x41]
add eax, 0xc
imul ecx, eax, 0xb
add ecx, dword [esp + 0x20]
add esi, esi
jmp 0x10012b4d
mov esi, ecx
cmp ecx, 0x80
jae 0x10012b30
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012b28
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, 0x80
jb 0x10012b16
mov eax, dword [esp + 0x1c]
movzx eax, byte [eax + 0x41]
imul ecx, eax, 0xb
mov eax, dword [esp + 0x14]
mov byte [ebp], 0
mov eax, dword [eax + 0x1c]
add ecx, dword [esp + 0x20]
mov byte [eax], 0
mov eax, dword [esp + 0x28]
mov dword [esp + 0x10], eax
movzx eax, byte [ecx]
lea ebp, [esi - 1]
imul ebp, eax
movzx eax, byte [ecx + 1]
mov dword [esp + 0x24], eax
add ebp, 0x100
shr ebp, 8
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jb 0x10012b9e
sub edx, eax
sub esi, ebp
mov ebp, 0x80
jmp 0x10012b95
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012b95
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10012b83
jmp 0x10013043
mov esi, ebp
cmp ebp, 0x80
mov ebp, 0x80
jae 0x10012bc3
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012bbf
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10012bad
lea eax, [esi - 1]
imul eax, dword [esp + 0x24]
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jb 0x100136e3
sub edx, ecx
sub esi, eax
jmp 0x10012bf8
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012bf8
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10012be6
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x44]
mov eax, dword [esp + 0x38]
add eax, 0x5f2
cmp dword [esp + 0x10], eax
lea ebp, [ecx + 0xe]
cmovb ebp, ecx
lea ecx, [esi - 1]
mov dword [esp + 0x18], ebp
movzx eax, byte [ebp]
movzx ebp, byte [ebp + 1]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jb 0x10012ebf
sub edx, eax
sub esi, ecx
mov ecx, 0x80
jmp 0x10012c5b
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012c5b
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012c49
mov ebp, dword [esp + 0x18]
lea eax, [esi - 1]
movzx ecx, byte [ebp + 4]
movzx ebp, byte [ebp + 5]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jb 0x10012d4c
sub edx, eax
sub esi, ecx
mov ecx, 0x80
jmp 0x10012ca4
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012ca4
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012c92
mov ecx, dword [esp + 0x18]
lea eax, [esi - 1]
xor ebp, ebp
mov dword [esp + 0x24], ebp
movzx ecx, byte [ecx + 8]
imul ecx, eax
mov eax, dword [esp + 0x18]
shr ecx, 8
movzx eax, byte [eax + ebp + 9]
lea ebp, [ecx + 1]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x24]
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jb 0x10012ceb
sub edx, eax
xor eax, eax
inc eax
shl eax, cl
add dword [esp + 0x10], eax
sub esi, ebp
mov ebp, esi
mov esi, 0x80
jmp 0x10012d04
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x10012d04
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, esi
jb 0x10012cf2
inc ecx
mov esi, ebp
mov dword [esp + 0x24], ecx
cmp ecx, 6
jae 0x10012d22
lea ecx, [ebp - 1]
mov ebp, dword [esp + 0x24]
imul ecx, dword [esp + 0x2c]
jmp 0x10012cbc
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
add ebp, 9
add eax, 0x40
mov dword [esp + 0x10], ebp
cmp ebp, eax
jae 0x1001311d
movzx eax, byte [ebp + 0x40]
imul ecx, eax, 0xb
add ecx, dword [esp + 0x20]
jmp 0x10013043
mov esi, ecx
cmp ecx, 0x80
jae 0x10012d70
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012d68
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, 0x80
jb 0x10012d56
mov ecx, dword [esp + 0x18]
lea eax, [esi - 1]
imul eax, ebp
movzx ebp, byte [ecx + 6]
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jb 0x10012e32
sub edx, ecx
sub esi, eax
mov ecx, 0x80
jmp 0x10012db0
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012db0
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012d9e
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x10]
add ebp, 7
mov dword [esp + 0x10], ebp
movzx ecx, byte [eax + 7]
lea eax, [esi - 1]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x10012e0c
mov esi, ecx
cmp ecx, 0x80
jae 0x10013025
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012dff
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, 0x80
jb 0x10012ded
jmp 0x10013025
sub edx, eax
sub esi, ecx
mov ecx, 0x80
jmp 0x10012e29
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012e29
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012e17
jmp 0x10013020
mov ecx, 0x80
mov esi, eax
cmp eax, ecx
jae 0x10012e53
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012e4f
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012e3d
add dword [esp + 0x10], 5
lea eax, [esi - 1]
imul eax, ebp
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jae 0x10012e99
mov ecx, 0x80
mov esi, eax
cmp eax, ecx
jae 0x10012e90
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012e8c
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012e7a
mov ebp, dword [esp + 0x10]
jmp 0x10013025
sub edx, ecx
sub esi, eax
mov ecx, 0x80
jmp 0x10012eb6
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012eb6
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012ea4
jmp 0x10012ff9
mov esi, ecx
cmp ecx, 0x80
jae 0x10012ee3
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012edb
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, 0x80
jb 0x10012ec9
lea eax, [esi - 1]
imul eax, ebp
mov ebp, dword [esp + 0x18]
movzx ecx, byte [ebp + 2]
add eax, 0x100
shr eax, 8
mov dword [esp + 0x2c], ecx
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jb 0x10012f99
sub edx, ecx
sub esi, eax
mov ecx, 0x80
jmp 0x10012f27
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012f27
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012f15
movzx ecx, byte [ebp + 3]
lea eax, [esi - 1]
add dword [esp + 0x10], 3
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x10012f76
mov ebp, 0x80
mov esi, ecx
cmp ecx, ebp
jae 0x10012e90
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012f6d
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10012f5b
jmp 0x10012e90
sub edx, eax
sub esi, ecx
mov ecx, 0x80
jmp 0x10012f93
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012f93
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012f81
jmp 0x10012ff9
mov ecx, 0x80
mov esi, eax
cmp eax, ecx
jae 0x10012fba
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012fb6
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012fa4
mov ebp, dword [esp + 0x10]
lea eax, [esi - 1]
imul eax, dword [esp + 0x2c]
inc ebp
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jae 0x10012fff
mov ecx, 0x80
mov esi, eax
cmp eax, ecx
jae 0x10012ff9
add esi, esi
add edx, edx
sub edi, 1
jne 0x10012ff5
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x10012fe3
mov ebp, dword [esp + 0x10]
jmp 0x10013020
sub edx, ecx
sub esi, eax
mov ecx, 0x80
jmp 0x1001301c
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001301c
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x1001300a
inc ebp
mov dword [esp + 0x10], ebp
movzx eax, byte [ebp + 0x40]
imul ecx, eax, 0xb
mov eax, dword [esp + 0x1c]
add eax, 0x40
add ecx, dword [esp + 0x20]
mov dword [esp + 0x18], ecx
cmp ebp, eax
jae 0x1001311d
movzx ebp, byte [ecx + 2]
lea eax, [esi - 1]
imul ebp, eax
movzx eax, byte [ecx + 3]
mov dword [esp + 0x2c], eax
add ebp, 0x100
shr ebp, 8
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jae 0x10013123
mov ecx, 0x80
jmp 0x10013084
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x10013084
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, ecx
jb 0x10013072
lea esi, [ebp + 1]
shr esi, 1
dec edi
mov eax, esi
shl eax, 0x18
cmp edx, eax
jb 0x100130c6
mov eax, esi
sub ebp, esi
shl eax, 0x18
sub edx, eax
add edx, edx
test edi, edi
jne 0x100130af
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x10]
or esi, 0xffffffff
movzx ecx, byte [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax + ecx*2], si
jmp 0x100130ec
add edx, edx
test edi, edi
jne 0x100130d5
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x10]
xor ebp, ebp
inc ebp
movzx ecx, byte [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax + ecx*2], bp
mov ebp, esi
lea esi, [ebp*2]
mov ebp, dword [esp + 0x10]
inc ebp
movzx eax, byte [ebp + 0x40]
add eax, 6
imul ecx, eax, 0xb
mov eax, dword [esp + 0x1c]
add eax, 0x40
mov dword [esp + 0x10], ebp
add ecx, dword [esp + 0x20]
mov dword [esp + 0x18], ecx
cmp ebp, eax
jb 0x10012b55
dec ebp
jmp 0x10013703
sub edx, eax
sub esi, ebp
mov ebp, 0x80
jmp 0x10013140
add esi, esi
add edx, edx
sub edi, 1
jne 0x10013140
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x1001312e
movzx eax, byte [ecx + 6]
lea ebp, [esi - 1]
imul ebp, dword [esp + 0x2c]
mov dword [esp + 0x2c], eax
add ebp, 0x100
shr ebp, 8
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jae 0x10013344
mov esi, 0x80
jmp 0x10013183
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x10013183
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, esi
jb 0x10013171
movzx esi, byte [ecx + 4]
lea eax, [ebp - 1]
movzx ecx, byte [ecx + 5]
imul esi, eax
add esi, 0x100
shr esi, 8
mov eax, esi
shl eax, 0x18
cmp edx, eax
jae 0x10013240
mov ecx, 0x80
jmp 0x100131c4
add esi, esi
add edx, edx
sub edi, 1
jne 0x100131c4
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ecx
jb 0x100131b2
lea ebp, [esi + 1]
shr ebp, 1
dec edi
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jb 0x10013207
mov eax, ebp
sub esi, ebp
shl eax, 0x18
sub edx, eax
add edx, edx
test edi, edi
jne 0x100131ef
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push 0xfffffffffffffffe
movzx ecx, byte [ebp]
mov eax, dword [eax + 4]
pop ebp
mov word [eax + ecx*2], bp
jmp 0x1001322d
add edx, edx
test edi, edi
jne 0x10013216
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x10]
push 2
pop esi
movzx ecx, byte [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax + ecx*2], si
mov esi, ebp
add esi, esi
mov ebp, dword [esp + 0x10]
inc ebp
movzx eax, byte [ebp + 0x40]
add eax, 0xc
jmp 0x100130ff
sub edx, eax
sub ebp, esi
mov esi, 0x80
jmp 0x1001325d
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x1001325d
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, esi
jb 0x1001324b
lea eax, [ebp - 1]
imul eax, ecx
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jb 0x100132a6
sub edx, ecx
sub ebp, eax
jmp 0x10013290
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x10013290
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, esi
jb 0x1001327e
mov dword [esp + 0x18], 4
mov dword [esp + 0x24], 0xfffffffc
jmp 0x100132d2
mov ebp, eax
cmp eax, esi
jae 0x100132c2
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x100132be
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, esi
jb 0x100132ac
mov dword [esp + 0x18], 3
mov dword [esp + 0x24], 0xfffffffd
lea esi, [ebp + 1]
shr esi, 1
dec edi
mov eax, esi
shl eax, 0x18
cmp edx, eax
jb 0x10013311
mov eax, esi
sub ebp, esi
shl eax, 0x18
sub edx, eax
add edx, edx
test edi, edi
jne 0x100132f9
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x24]
movzx ecx, byte [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax + ecx*2], si
jmp 0x10013338
add edx, edx
test edi, edi
jne 0x10013320
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
movzx ecx, byte [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax + ecx*2], bp
mov ebp, esi
lea esi, [ebp*2]
jmp 0x1001322f
sub edx, eax
sub esi, ebp
mov ebp, 0x80
jmp 0x10013361
add esi, esi
add edx, edx
sub edi, 1
jne 0x10013361
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x1001334f
movzx ebp, byte [ecx + 8]
lea eax, [esi - 1]
imul eax, dword [esp + 0x2c]
mov dword [esp + 0x2c], ebp
add eax, 0x100
shr eax, 8
mov ebp, eax
shl ebp, 0x18
cmp edx, ebp
jae 0x1001343f
mov ebp, 0x80
mov esi, eax
cmp eax, ebp
jae 0x100133ab
add esi, esi
add edx, edx
sub edi, 1
jne 0x100133a7
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10013395
movzx ecx, byte [ecx + 7]
lea eax, [esi - 1]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x10013403
mov esi, ecx
cmp ecx, ebp
jae 0x100133e3
add esi, esi
add edx, edx
sub edi, 1
jne 0x100133df
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x100133cd
movzx ecx, word [0x1001f9f2]
mov eax, 0x1001f9f4
movzx ebp, word [0x1001f9f0]
mov dword [esp + 0x18], 0x1001f9f3
jmp 0x100135e4
sub edx, eax
sub esi, ecx
jmp 0x1001341b
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001341b
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10013409
movzx ecx, word [0x1001fa02]
mov eax, 0x1001fa04
movzx ebp, word [0x1001fa00]
mov dword [esp + 0x18], 0x1001fa03
jmp 0x100135e4
sub edx, ebp
sub esi, eax
mov ebp, 0x80
jmp 0x1001345c
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001345c
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x1001344a
movzx ebp, byte [ecx + 0xa]
lea eax, [esi - 1]
imul eax, dword [esp + 0x2c]
mov dword [esp + 0x2c], ebp
add eax, 0x100
shr eax, 8
mov ebp, eax
shl ebp, 0x18
cmp edx, ebp
jae 0x1001353a
mov ebp, 0x80
mov esi, eax
cmp eax, ebp
jae 0x100134a6
add esi, esi
add edx, edx
sub edi, 1
jne 0x100134a2
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10013490
movzx ecx, byte [ecx + 9]
lea eax, [esi - 1]
imul ecx, eax
add ecx, 0x100
shr ecx, 8
mov eax, ecx
shl eax, 0x18
cmp edx, eax
jae 0x100134fe
mov esi, ecx
cmp ecx, ebp
jae 0x100134de
add esi, esi
add edx, edx
sub edi, 1
jne 0x100134da
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x100134c8
movzx ecx, word [0x1001fa12]
mov eax, 0x1001fa14
movzx ebp, word [0x1001fa10]
mov dword [esp + 0x18], 0x1001fa13
jmp 0x100135e4
sub edx, eax
sub esi, ecx
jmp 0x10013516
add esi, esi
add edx, edx
sub edi, 1
jne 0x10013516
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10013504
movzx ecx, word [0x1001fa22]
mov eax, 0x1001fa24
movzx ebp, word [0x1001fa20]
mov dword [esp + 0x18], 0x1001fa23
jmp 0x100135e4
sub edx, ebp
sub esi, eax
mov ebp, 0x80
jmp 0x10013557
add esi, esi
add edx, edx
sub edi, 1
jne 0x10013557
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x10013545
lea eax, [esi - 1]
imul eax, dword [esp + 0x2c]
add eax, 0x100
shr eax, 8
mov ecx, eax
shl ecx, 0x18
cmp edx, ecx
jae 0x100135ad
mov esi, eax
cmp eax, ebp
jae 0x10013590
add esi, esi
add edx, edx
sub edi, 1
jne 0x1001358c
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x1001357a
movzx ecx, word [0x1001fa32]
mov eax, 0x1001fa34
movzx ebp, word [0x1001fa30]
mov dword [esp + 0x18], 0x1001fa33
jmp 0x100135e4
sub edx, ecx
sub esi, eax
jmp 0x100135c5
add esi, esi
add edx, edx
sub edi, 1
jne 0x100135c5
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x100135b3
movzx ecx, word [0x1001fa42]
mov eax, 0x1001fa44
movzx ebp, word [0x1001fa40]
mov dword [esp + 0x18], 0x1001fa43
movsx ecx, cx
movzx ebp, bp
mov dword [esp + 0x24], ebp
movzx ebp, byte [eax + ecx]
lea eax, [esi - 1]
imul ebp, eax
mov eax, dword [esp + 0x18]
shr ebp, 8
inc ebp
movzx eax, byte [eax + ecx]
mov dword [esp + 0x2c], eax
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jb 0x10013620
sub edx, eax
sub esi, ebp
xor eax, eax
mov ebp, esi
inc eax
shl eax, cl
add dword [esp + 0x24], eax
mov esi, 0x80
jmp 0x10013639
add ebp, ebp
add edx, edx
sub edi, 1
jne 0x10013639
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp ebp, esi
jb 0x10013627
sub ecx, 1
mov esi, ebp
js 0x1001364c
dec ebp
imul ebp, dword [esp + 0x2c]
jmp 0x100135f8
inc ebp
shr ebp, 1
dec edi
mov eax, ebp
shl eax, 0x18
cmp edx, eax
jb 0x1001368b
mov eax, ebp
sub esi, ebp
shl eax, 0x18
sub edx, eax
add edx, edx
test edi, edi
jne 0x10013671
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x24]
neg ebp
movzx ecx, byte [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax + ecx*2], bp
jmp 0x100136b2
add edx, edx
test edi, edi
jne 0x1001369a
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x24]
movzx ecx, byte [eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
mov word [eax + ecx*2], si
mov esi, ebp
mov ebp, dword [esp + 0x10]
add esi, esi
inc ebp
movzx eax, byte [ebp + 0x40]
add eax, 0xc
imul ecx, eax, 0xb
mov eax, dword [esp + 0x1c]
add eax, 0x40
add ecx, dword [esp + 0x20]
mov dword [esp + 0x18], ecx
cmp ebp, eax
jae 0x1001311d
mov dword [esp + 0x10], ebp
jmp 0x10012b55
mov esi, eax
cmp eax, ebp
jae 0x100136ff
add esi, esi
add edx, edx
sub edi, 1
jne 0x100136fb
movzx eax, byte [ebx]
push 8
or edx, eax
inc ebx
pop edi
cmp esi, ebp
jb 0x100136e9
mov ebp, dword [esp + 0x10]
sub ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x14]
movzx eax, byte [eax + ebp + 0x6ad]
mov dword [ecx + 0x2c], eax
add ecx, 0x50
mov dword [esp + 0x14], ecx
cmp ecx, dword [esp + 0x30]
jb 0x1001246f
mov ebp, dword [esp + 0x38]
mov ecx, dword [ebp]
sub ebx, dword [ecx + 0x14]
mov dword [ecx + 0x10], ebx
mov eax, dword [ebp]
mov dword [eax + 0xc], edi
mov eax, dword [ebp]
pop edi
mov dword [eax + 8], edx
mov eax, dword [ebp]
mov dword [eax + 4], esi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret