Function at 0x10029ade
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008b77c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3b4
push esi
movzx eax, byte [ebp + 8]
test eax, eax
je 0x1002b3e4
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x200], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x234], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x2c0], 0xfffffffb
mov dword [ebp - 0x2bc], 0xfffffffb
mov dword [ebp - 0x2b8], 0xfffffffb
mov dword [ebp - 0x2b4], 0xfffffffb
lea ecx, [ebp - 0x9d]
call fcn.1000a6f3
push eax
lea eax, [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x2c0]
push eax
lea ecx, [ebp - 0x3c0]
call fcn.10018f37
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x94]
call fcn.10018ee6
and dword [ebp - 4], 0
mov dword [ebp - 0x220], 0x96f377cc
mov dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 0x70], 0xffff
mov dword [ebp - 0x168], 0x2ff7a2d4
mov dword [ebp - 0x258], 0x2fdd
mov dword [ebp - 0x228], 0xb334fe9d
mov dword [ebp - 0x20], 0
jmp 0x10029bc8
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x10029bdb
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x10], 0x184c506d
jmp 0x10029bc1
mov dword [ebp - 0x20], 0
jmp 0x10029beb
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x10029c01
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x104], 0x3196add8
jmp 0x10029be4
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x10], 3
jmp 0x10029c26
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x10], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x10], 0
jl 0x1002a1fd
mov dword [ebp - 0x28], 3
mov dword [ebp - 0x290], 0xbbfefa2e
mov dword [ebp - 0x28c], 0xbbfefa2e
mov dword [ebp - 0x288], 0xbbfefa2e
mov dword [ebp - 0x284], 0xbbfefa2e
push 3
lea ecx, [ebp - 0xd0]
call fcn.10018e8a
mov byte [ebp - 4], 1
mov dword [ebp - 0x78], 0
jmp 0x10029c87
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 3
jge 0x10029ca3
push dword [ebp - 0x78]
lea ecx, [ebp - 0xd0]
call fcn.10018f28
mov dword [eax], 2
jmp 0x10029c80
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
push 4
pop eax
imul eax, eax, 0
mov esi, dword [ebp + eax - 0x10]
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov dword [eax], esi
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x220], eax
jg 0x10029cf0
mov dword [ebp - 0x130], 1
jmp 0x10029cf7
and dword [ebp - 0x130], 0
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x130]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x340], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
mov dword [ebp - 0x38c], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x394], eax
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov ecx, dword [ebp - 0x28]
cmp dword [eax], ecx
jle 0x10029ff3
mov dword [ebp - 0x40], 5
cmp dword [ebp - 0x40], 0
mov eax, 0x2e7c650b
cmp eax, 0xfffffff7
jbe 0x10029d66
mov dword [ebp - 0x230], 1
jmp 0x10029d6d
and dword [ebp - 0x230], 0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x28]
mov dword [ebp + eax - 0x290], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x70], eax
jge 0x10029dad
cmp dword [ebp - 0x40], 0
je 0x10029dc2
mov eax, 0xd4965da1
test eax, eax
je 0x10029dc2
mov dword [ebp - 0x1bc], 1
jmp 0x10029dc9
and dword [ebp - 0x1bc], 0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov esi, eax
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov ecx, dword [esi]
imul ecx, dword [eax]
cmp ecx, dword [ebp - 0x1bc]
jle 0x10029e0e
mov dword [ebp - 0x1d0], 1
jmp 0x10029e15
and dword [ebp - 0x1d0], 0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1d0]
je 0x10029e40
mov dword [ebp - 0x1d8], 1
jmp 0x10029e47
and dword [ebp - 0x1d8], 0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov ecx, dword [ebp - 0x1d8]
mov dword [eax], ecx
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov eax, dword [eax]
sub eax, 7
cmp eax, 0xfff8
ja 0x10029e91
mov dword [ebp - 0x1e0], 1
jmp 0x10029e98
and dword [ebp - 0x1e0], 0
imul eax, dword [ebp - 0x1e0], 0xffffffff
imul eax, dword [ebp - 0x40]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x74], eax
push 0
lea ecx, [ebp - 0xd0]
call fcn.10018f28
mov dword [ebp - 0x1b4], eax
push 1
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov ecx, dword [ebp - 0x1b4]
mov eax, dword [eax]
mov dword [ecx], eax
push 4
pop eax
imul eax, eax, 0
lea eax, [ebp + eax - 0x104]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
mov ecx, dword [ebp - 0x1b4]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov eax, dword [ebp - 0xec]
cmp dword [eax], 0
je 0x10029f28
push 0
lea ecx, [ebp - 0xd0]
call fcn.10018f28
cmp dword [eax], 0
je 0x10029f28
mov dword [ebp - 0x164], 1
jmp 0x10029f2f
and dword [ebp - 0x164], 0
cmp dword [ebp - 0x164], 0x70fc
je 0x10029f47
mov dword [ebp - 0xf4], 1
jmp 0x10029f4e
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0xf4], eax
je 0x10029f77
push 0
lea ecx, [ebp - 0xd0]
call fcn.10018f28
cmp dword [eax], 0
je 0x10029f77
mov dword [ebp - 0x238], 1
jmp 0x10029f7e
and dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x388], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x348], eax
push 0
lea ecx, [ebp - 0xd0]
call fcn.10018f28
cmp dword [eax], 0
jne 0x10029fb4
mov eax, 0xd8bac8e9
test eax, eax
jne 0x10029fb4
and dword [ebp - 0x1c0], 0
jmp 0x10029fbe
mov dword [ebp - 0x1c0], 1
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x1c0], eax
jne 0x10029fe6
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov dword [eax], 0x72ea1289
jmp 0x10029fee
push 0
call fcn.100290fd
pop ecx
jmp 0x1002a1e9
push 3
lea ecx, [ebp - 0x2f4]
call fcn.10018e8a
mov byte [ebp - 4], 2
mov dword [ebp - 0x98], 0x86206571
mov dword [ebp - 0x248], 0xffffffff
mov dword [ebp - 0x80], 0
jmp 0x1002a028
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 3
jge 0x1002a044
push dword [ebp - 0x80]
lea ecx, [ebp - 0x2f4]
call fcn.10018f28
mov dword [eax], 6
jmp 0x1002a021
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x37c], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x350], eax
push 0
lea ecx, [ebp - 0xd0]
call fcn.10018f28
cmp dword [ebp - 0x98], 0xa730
jne 0x1002a081
mov dword [ebp - 0x250], 1
jmp 0x1002a088
and dword [ebp - 0x250], 0
push 0
lea ecx, [ebp - 0xd0]
call fcn.10018f28
cmp dword [eax], 0
jne 0x1002a0ac
cmp dword [ebp - 0x98], 0
jne 0x1002a0ac
and dword [ebp - 0xa8], 0
jmp 0x1002a0b6
mov dword [ebp - 0xa8], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xa8]
mov dword [ebp + eax - 0x290], ecx
cmp dword [ebp - 0xa8], 0xffffffff
jle 0x1002a0de
mov dword [ebp - 0xfc], 1
jmp 0x1002a0e5
and dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0x258]
cmp dword [ebp - 0xfc], eax
jne 0x1002a0ff
mov dword [ebp - 0x170], 1
jmp 0x1002a106
and dword [ebp - 0x170], 0
push 2
lea ecx, [ebp - 0x2f4]
call fcn.10018f28
mov eax, dword [eax]
cmp eax, dword [ebp - 0x170]
jle 0x1002a129
mov dword [ebp - 0x260], 1
jmp 0x1002a130
and dword [ebp - 0x260], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x104]
mov dword [ebp - 0x380], eax
push 0
lea ecx, [ebp - 0xd0]
call fcn.10018f28
mov ecx, dword [ebp - 0x70]
cmp dword [eax], ecx
jge 0x1002a163
mov dword [ebp - 0x264], 1
jmp 0x1002a16a
and dword [ebp - 0x264], 0
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x360], eax
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x10]
lea ecx, [ebp - 0x94]
call fcn.10018f28
mov esi, eax
push 2
lea ecx, [ebp - 0xd0]
call fcn.10018f28
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x1002a1a9
mov dword [ebp - 0x1a8], 1
jmp 0x1002a1b0
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x228]
cmp dword [ebp - 0x1a8], eax
jle 0x1002a1ca
mov dword [ebp - 0x10c], 1
jmp 0x1002a1d1
and dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x74], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2f4]
call fcn.10018f0c
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xd0]
call fcn.10018f0c
jmp 0x10029c11
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.10018f0c
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 4]
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x18], 0xa61928c1
mov dword [ebp - 0x1f4], 0xcf7921e1
mov dword [ebp - 0x124], 0xfffffffb
mov dword [ebp - 0x114], 0xc6578637
push 0xcb8
push 0
call fcn.1002b7a4
pop ecx
pop ecx
mov dword [ebp - 0x18], 0
jmp 0x1002a25b
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xfffffff8
je 0x1002a3e4
mov dword [ebp - 0xc4], 4
mov dword [ebp - 0x11c], 0xcf5aa05
cmp dword [ebp - 0x18], 0
jne 0x1002a371
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x390], eax
mov eax, dword [ebp - 0xc4]
add eax, 0x5466bc65
je 0x1002a2b1
cmp dword [ebp - 0x124], 0
je 0x1002a2b1
mov dword [ebp - 0x178], 1
jmp 0x1002a2b8
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x114]
neg eax
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xc4]
sub eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jge 0x1002a2ec
mov dword [ebp - 0x1d4], 1
jmp 0x1002a2f3
and dword [ebp - 0x1d4], 0
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0x270e7ad5
jl 0x1002a317
mov dword [ebp - 0x180], 1
jmp 0x1002a31e
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x180], eax
je 0x1002a335
mov dword [ebp - 0x1b0], 1
jmp 0x1002a33c
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x124]
cmp dword [ebp - 0x1b0], eax
jne 0x1002a356
mov dword [ebp - 0x12c], 1
jmp 0x1002a35d
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x12c]
jne 0x1002a371
and dword [ebp - 0x188], 0
jmp 0x1002a37b
mov dword [ebp - 0x188], 1
cmp dword [ebp - 0x188], 1
je 0x1002a390
mov dword [ebp - 0x134], 1
jmp 0x1002a397
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x134]
jge 0x1002a3c5
mov byte [ebp - 0x2b], 0
push 0x4a57
push 0x17a
push 0x139a
lea eax, [ebp - 0x2b]
push eax
push 0
call fcn.1002b84e
add esp, 0x14
jmp 0x1002a3df
mov byte [ebp - 0x29], 0
movzx eax, byte [ebp - 0x29]
test eax, eax
je 0x1002a3df
push 0
push 0x6eef
call fcn.100327a6
pop ecx
pop ecx
jmp 0x1002a254
or dword [ebp - 0x2e8], 0xffffffff
or dword [ebp - 0x2e4], 0xffffffff
or dword [ebp - 0x2e0], 0xffffffff
or dword [ebp - 0x2dc], 0xffffffff
lea ecx, [ebp - 0xb9]
call fcn.1000a6f3
push eax
lea eax, [ebp - 0x2d8]
push eax
lea eax, [ebp - 0x2e8]
push eax
lea ecx, [ebp - 0x3b8]
call fcn.10018f37
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x274]
call fcn.10018ee6
mov dword [ebp - 4], 3
mov dword [ebp - 0x7c], 0x7555b7ce
mov dword [ebp - 0x2d4], 0xfffffffe
mov dword [ebp - 0x2d0], 0xfffffffe
mov dword [ebp - 0x2cc], 0xfffffffe
mov dword [ebp - 0x2c8], 0xfffffffe
lea ecx, [ebp - 0xa9]
call fcn.1000a6f3
push eax
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x2d4]
push eax
lea ecx, [ebp - 0x3a8]
call fcn.10018f37
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x35c]
call fcn.10018ee6
mov byte [ebp - 4], 4
mov dword [ebp - 0x370], 0x4d0289a6
push 3
lea ecx, [ebp - 0x324]
call fcn.10018e8a
mov byte [ebp - 4], 5
mov dword [ebp - 0x5c], 0
jmp 0x1002a4cf
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 3
jge 0x1002a4e5
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0x3a0], 0xb5f0b101
jmp 0x1002a4c8
lea eax, [ebp - 0x324]
push eax
push 0x3096
push 0
lea eax, [ebp - 0x5c]
push eax
call fcn.1002e0ca
add esp, 0x10
push 0
lea ecx, [ebp - 0x274]
call fcn.10018f28
mov dword [eax], 0xe
jmp 0x1002a538
push 0
lea ecx, [ebp - 0x274]
call fcn.10018f28
mov dword [ebp - 0x1cc], eax
mov eax, dword [ebp - 0x1cc]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x1cc]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x274]
call fcn.10018f28
cmp dword [eax], 2
jne 0x1002a661
mov dword [ebp - 0x334], 1
mov dword [ebp - 0x338], 0xfffffffe
mov dword [ebp - 0x204], 0xfffffffb
lea eax, [ebp - 0x324]
push eax
push 0
call fcn.1002c793
pop ecx
pop ecx
cmp dword [ebp - 0x204], 0
je 0x1002a5e5
mov dword [ebp - 0x240], 0x5a592c6e
cmp dword [ebp - 0x240], 0
je 0x1002a5b6
push 2
lea ecx, [ebp - 0x35c]
call fcn.10018f28
cmp dword [eax], 0
je 0x1002a5b6
mov dword [ebp - 0x13c], 1
jmp 0x1002a5bd
and dword [ebp - 0x13c], 0
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x13c]
mov dword [ebp + eax - 0x3a0], ecx
mov byte [ebp - 0x21], 0
movzx eax, byte [ebp - 0x21]
test eax, eax
je 0x1002a5e3
push 1
call fcn.100290fd
pop ecx
jmp 0x1002a65c
mov dword [ebp - 0x7c], 0xa
jmp 0x1002a5f5
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0x19
jle 0x1002a642
mov byte [ebp - 0x2c], 0
movzx eax, byte [ebp - 0x2c]
test eax, eax
je 0x1002a620
push 0
push 0xb08
push 0x1e2a
push 0x6c58
call fcn.1002b729
add esp, 0x10
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp - 0x2d]
test eax, eax
je 0x1002a640
push 0
push 0x613e
push 0x57f9
call fcn.1002c666
add esp, 0xc
jmp 0x1002a5ee
mov byte [ebp - 0x22], 0
movzx eax, byte [ebp - 0x22]
test eax, eax
je 0x1002a65c
push 0
push 0x530b
call fcn.100327e6
pop ecx
pop ecx
jmp 0x1002a514
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x324]
call fcn.10018f0c
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x35c]
call fcn.10018f0c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x274]
call fcn.10018f0c
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
lea eax, [eax + ecx + 0x18]
mov dword [ebp - 0x1c], eax
and dword [ebp - 0xb0], 0
jmp 0x1002a6c2
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x1f8], eax
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x218]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1f8]
mov ecx, dword [ecx]
mov eax, dword [eax]
mov dword [ecx + 8], eax