Function at 0x435830
Capabilities:
Enumerate process modules

Disassembly:
push ebp
mov ebp, esp
lea esp, [esp - 0x284]
push ebx
push esi
push edi
mov dword [ebp - 0x25c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x238], 0
xor eax, eax
push fcn.00435790
push ebp
push 0x414810
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x260], 0
xor eax, eax
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x264], 0
mov ecx, dword [0x56bf90]
mov edx, 1
mov eax, 0x597b20
call fcn.00429540
mov dword [ebp - 0x268], eax
mov ebx, 0x597b98
lea eax, [ebp - 0x238]
mov edx, 0x597b98
call fcn.0040cd30
mov dword [ebp - 0x23c], 4
lea eax, [ebp - 0x23c]
push eax
mov edx, 0x597b98
mov ecx, 1
lea eax, [ebp - 0x238]
call fcn.0040ce50
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x569890]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x569890]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x5698a0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5698a0]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 4
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x5698b0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5698b0]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 8
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x5698c0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5698c0]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 0xc
call fcn.00408bd0
mov edx, dword [ebp - 0x238]
mov ecx, dword [ebp - 0x268]
lea eax, [ecx + 8]
mov ecx, ebx
call fcn.0040ce30
mov ecx, dword [0x56c050]
mov edx, 1
mov eax, 0x597b20
call fcn.00429540
mov dword [ebp - 0x26c], eax
mov ebx, 0x597b98
lea eax, [ebp - 0x238]
mov edx, 0x597b98
call fcn.0040cd30
mov dword [ebp - 0x23c], 3
lea eax, [ebp - 0x23c]
push eax
mov edx, 0x597b98
mov ecx, 1
lea eax, [ebp - 0x238]
call fcn.0040ce50
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x5698d0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5698d0]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x5698e0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5698e0]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 4
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x5698f0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5698f0]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 8
call fcn.00408bd0
mov edx, dword [ebp - 0x238]
mov ecx, dword [ebp - 0x26c]
lea eax, [ecx + 8]
mov ecx, ebx
call fcn.0040ce30
mov ecx, dword [0x56c070]
mov edx, 1
mov eax, 0x597b20
call fcn.00429540
mov edi, eax
mov ebx, 0x597b98
lea eax, [ebp - 0x238]
mov edx, 0x597b98
call fcn.0040cd30
mov dword [ebp - 0x23c], 2
lea eax, [ebp - 0x23c]
push eax
mov edx, 0x597b98
mov ecx, 1
lea eax, [ebp - 0x238]
call fcn.0040ce50
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x569900]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x569900]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x569910]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x569910]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 4
call fcn.00408bd0
mov edx, dword [ebp - 0x238]
lea eax, [edi + 8]
mov ecx, ebx
call fcn.0040ce30
mov ecx, dword [0x56c080]
mov edx, 1
mov eax, 0x597b20
call fcn.00429540
mov esi, eax
mov ebx, 0x597b98
lea eax, [ebp - 0x238]
mov edx, 0x597b98
call fcn.0040cd30
mov dword [ebp - 0x23c], 4
lea eax, [ebp - 0x23c]
push eax
mov edx, 0x597b98
mov ecx, 1
lea eax, [ebp - 0x238]
call fcn.0040ce50
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x569920]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x569920]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x569950]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x569950]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 4
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x569930]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x569930]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 8
call fcn.00408bd0
lea eax, [ebp - 0x240]
push eax
mov eax, dword [0x569940]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x569940]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x238]
add eax, 0xc
call fcn.00408bd0
mov edx, dword [ebp - 0x238]
lea eax, [esi + 8]
mov ecx, ebx
call fcn.0040ce30
mov ebx, 0x598fd8
lea eax, [ebp - 0x244]
mov edx, 0x598fd8
call fcn.0040cd30
mov dword [ebp - 0x23c], 4
lea eax, [ebp - 0x23c]
push eax
mov edx, 0x598fd8
mov ecx, 1
lea eax, [ebp - 0x244]
call fcn.0040ce50
mov eax, dword [ebp - 0x244]
mov edx, dword [ebp - 0x268]
mov dword [eax], edx
mov eax, dword [ebp - 0x244]
mov edx, dword [ebp - 0x26c]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x244]
mov dword [eax + 8], edi
mov eax, dword [ebp - 0x244]
mov dword [eax + 0xc], esi
mov edx, dword [ebp - 0x244]
lea eax, [ebp - 4]
mov ecx, ebx
call fcn.0040ce30
call sub.kernel32.dll_GetCurrentProcess
mov dword [ebp - 0x260], eax
lea eax, [ebp - 8]
push eax
push 0xf00ff
push dword [ebp - 0x260]
call sub.advapi32.dll_OpenProcessToken
or eax, eax
setne al
mov byte [ebp - 0x284], al
test al, al
je 0x4360e0
lea eax, [ebp - 0x21c]
push eax
mov eax, dword [0x5689d0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5689d0]
mov eax, 0x58ed90
call fcn.004237d0
push 1
mov eax, dword [ebp - 0x21c]
test eax, eax
jne 0x435e34
mov eax, 0x5e92f0
mov ecx, eax
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x25c]
call fcn.0043c400
mov byte [ebp - 0x270], al
lea eax, [ebp - 0xc]
push eax
push 0
push 0
push dword [ebp - 0x260]
call fcn.00555320
or eax, eax
setne al
mov byte [ebp - 0x284], al
test al, al
je 0x4360a8
mov eax, dword [ebp - 0xc]
shr eax, 2
mov ebx, eax
mov dword [ebp - 0x23c], ebx
lea eax, [ebp - 0x23c]
push eax
mov edx, 0x599000
lea eax, [ebp - 0x220]
mov ecx, 1
call fcn.0040ce50
lea eax, [ebp - 0xc]
push eax
mov eax, ebx
shl eax, 2
push eax
push dword [ebp - 0x220]
push dword [ebp - 0x260]
call fcn.00555320
or eax, eax
setne al
mov byte [ebp - 0x284], al
test al, al
je 0x4360a8
lea eax, [ebx - 1]
mov dword [ebp - 0x274], eax
mov dword [ebp - 0x278], 0xffffffff
lea esi, [esi]
nop
add dword [ebp - 0x278], 1
push 0x104
lea eax, [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x278]
push dword [eax + edx*4]
call sub.kernel32.dll_GetModuleFileNameW
mov dword [ebp - 0x264], eax
test eax, eax
jbe 0x436094
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x214]
mov cl, 1
mov edx, 0x103
call fcn.0040b720
mov eax, dword [ebp - 0x24c]
lea edx, [ebp - 0x248]
call fcn.00458850
mov eax, dword [ebp - 0x248]
lea edx, [ebp - 0x234]
call fcn.0040b160
lea ecx, [ebp - 0x218]
mov eax, dword [ebp - 0x234]
xor dx, dx
call fcn.0040a550
mov eax, dword [ebp - 4]
test eax, eax
je 0x435f71
mov eax, dword [eax - 4]
add eax, 1
sub eax, 1
mov edi, eax
mov dword [ebp - 0x27c], 0xffffffff
add dword [ebp - 0x27c], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x27c]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 8]
test eax, eax
je 0x435fa0
mov eax, dword [eax - 4]
add eax, 1
sub eax, 1
mov esi, eax
mov dword [ebp - 0x280], 0xffffffff
nop
add dword [ebp - 0x280], 1
lea eax, [ebp - 0x240]
call fcn.00403d10
push 0
mov eax, dword [ebp - 0x218]
lea edx, [ebp - 0x250]
call fcn.00459eb0
mov ebx, dword [ebp - 0x250]
lea eax, [ebp - 0x254]
push eax
mov eax, dword [0x5685c0]
call fcn.0040cd20
mov ecx, eax
mov edx, dword [0x5685c0]
mov eax, 0x58ed90
call fcn.004237d0
mov edx, dword [ebp - 0x254]
lea eax, [ebp - 0x240]
mov ecx, ebx
call fcn.00408cd0
mov edx, dword [ebp - 0x240]
lea ecx, [ebp - 0x230]
mov eax, 0x5978a8
call fcn.00427bf0
lea edx, [ebp - 0x230]
lea ecx, [ebp - 0x254]
mov eax, 0x5978a8
call fcn.00427b70
mov edx, dword [ebp - 0x254]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x27c]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x280]
mov eax, dword [eax + ecx*4]
call fcn.00409790
test eax, eax
jne 0x43607c
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x27c]
mov eax, dword [eax + edx*4]
mov edx, dword [eax + 4]
or dword [ebp - 0x258], edx
lea esi, [esi]
cmp esi, dword [ebp - 0x280]
ja 0x435fb0
cmp edi, dword [ebp - 0x27c]
ja 0x435f80
mov eax, dword [ebp - 0x274]
cmp eax, dword [ebp - 0x278]
ja 0x435ee0
mov esi, esi
mov al, byte [ebp - 0x270]
test al, al
je 0x4360d4
push 0
mov ecx, dword [ebp - 0x21c]
test ecx, ecx
jne 0x4360c3
mov ecx, 0x5e92f0
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x25c]
call fcn.0043c400
lea esi, [esi]
push dword [ebp - 0x260]
call sub.kernel32.dll_CloseHandle
nop
lea eax, [ebp - 0x214]
xor cl, cl
mov edx, 0x208
call fcn.00403800
mov ebx, dword [ebp - 0x258]
xor eax, eax
pop edx
add esp, 0xc
mov dword fs:[eax], edx
mov eax, ebp
call fcn.00435790
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret