Function at 0x632020
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x150
push esi
push edi
push ecx
lea edi, [ebp - 0x150]
mov ecx, 0x54
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
pop ecx
mov eax, dword [0x87fbc0]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 8], ecx
push 0xab
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
mov eax, dword [ebp - 8]
push eax
call fcn.0047ca40
push 0xffffffffffffffff
mov ecx, dword [ebp + 8]
push ecx
call fcn.004d7a90
test eax, eax
jne 0x632082
push 0xac
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
call fcn.004053b0
test eax, eax
je 0x632082
int3
cmp dword [ebp + 0x10], 0
je 0x6320ad
push 1
push 0x18
mov eax, dword [ebp + 0x10]
push eax
call fcn.004d78d0
test eax, eax
jne 0x6320ad
push 0xaf
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
call fcn.004053b0
test eax, eax
je 0x6320ad
int3
mov edx, dword [ebp + 0xc]
and edx, 0x4000
je 0x6320cc
push 0xb0
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
call fcn.004053b0
test eax, eax
je 0x6320cc
int3
mov ecx, dword [ebp - 8]
cmp dword [ecx + 4], 0xffffffff
je 0x6320e9
push 0xb3
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
call fcn.004053b0
test eax, eax
je 0x6320e9
int3
mov eax, dword [ebp + 0xc]
and eax, 0xffff7fff
mov dword [ebp + 0xc], eax
mov ecx, dword [ebp - 8]
mov dword [ecx + 8], 0
mov edx, dword [ebp - 8]
mov dword [edx + 4], 0xffffffff
mov ecx, dword [ebp - 8]
add ecx, 0xc
call fcn.00411ac0
nop
cmp dword [ebp + 8], 0
je 0x63214f
push 0
push 0x104
mov eax, dword [ebp + 8]
push eax
call fcn.00632990
test eax, eax
jl 0x63214f
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x110]
push eax
call fcn.00632d20
test eax, eax
jne 0x63214d
xor eax, eax
jmp 0x632450
jmp 0x632176
cmp dword [ebp + 0x10], 0
je 0x63216f
mov ecx, dword [ebp + 0x10]
mov dword [ecx + 0xc], 3
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp + 0x10]
add ecx, 0x14
call fcn.00411dd0
nop
xor eax, eax
jmp 0x632450
lea eax, [ebp - 0x110]
push eax
mov ecx, dword [ebp - 8]
add ecx, 0xc
call fcn.00411dd0
mov dword [ebp - 0x118], 0
mov ecx, dword [ebp + 0xc]
and ecx, 3
mov dword [ebp - 0x140], ecx
je 0x6321b4
cmp dword [ebp - 0x140], 1
je 0x6321c0
cmp dword [ebp - 0x140], 2
je 0x6321cc
jmp 0x6321d8
mov dword [ebp - 0x118], VariantInit
jmp 0x6321f0
mov dword [ebp - 0x118], 0x40000000
jmp 0x6321f0
mov dword [ebp - 0x118], 0xc0000000
jmp 0x6321f0
xor edx, edx
jne 0x6321f0
push 0xe0
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
call fcn.004053b0
test eax, eax
je 0x6321f0
int3
mov dword [ebp - 0x11c], 0
mov ecx, dword [ebp + 0xc]
and ecx, 0x70
mov dword [ebp - 0x144], ecx
cmp dword [ebp - 0x144], 0x40
ja case.0x63221c.1
mov edx, dword [ebp - 0x144]
movzx eax, byte [edx + 0x6324c0]
jmp dword [eax*4 + 0x6324ac]
xor ecx, ecx
jne case.0x63221c.0
push 0xe8
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
call fcn.004053b0
test eax, eax
je case.0x63221c.0
int3
mov dword [ebp - 0x11c], 0
jmp 0x632269
mov dword [ebp - 0x11c], 1
jmp 0x632269
mov dword [ebp - 0x11c], 2
jmp 0x632269
mov dword [ebp - 0x11c], 3
mov dword [ebp - 0x12c], 0xc
mov dword [ebp - 0x128], 0
mov eax, dword [ebp + 0xc]
and eax, 0x80
jne 0x632293
mov dword [ebp - 0x148], 1
jmp 0x63229d
mov dword [ebp - 0x148], 0
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x124], ecx
mov edx, dword [ebp + 0xc]
and edx, 0x1000
je 0x6322d6
mov eax, dword [ebp + 0xc]
and eax, 0x2000
je 0x6322ca
mov dword [ebp - 0x134], 4
jmp 0x6322d4
mov dword [ebp - 0x134], 2
jmp 0x6322e0
mov dword [ebp - 0x134], 3
mov ecx, dword [ebp + 0xc]
and ecx, 0xc0000
cmp ecx, 0xc0000
jne 0x632305
push 0x110
push str.D:_a_work1_s_src_vctoolsVC7LibsShipATLMFCSrcMFC_filecore.cpp
call fcn.004053b0
test eax, eax
je 0x632305
int3
mov dword [ebp - 0x138], 0x80
mov eax, dword [ebp + 0xc]
and eax, 0x10000
je 0x63232b
mov ecx, dword [ebp - 0x138]
or ecx, 0x20000000
mov dword [ebp - 0x138], ecx
mov edx, dword [ebp + 0xc]
and edx, 0x20000
je 0x632347
mov eax, dword [ebp - 0x138]
or eax, 0x80000000
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp + 0xc]
and ecx, 0x40000
je 0x632364
mov edx, dword [ebp - 0x138]
or edx, 0x10000000
mov dword [ebp - 0x138], edx
mov eax, dword [ebp + 0xc]
and eax, 0x80000
je 0x632380
mov ecx, dword [ebp - 0x138]
or ecx, 0x8000000
mov dword [ebp - 0x138], ecx
mov edx, dword [ebp - 8]
cmp dword [edx + 0x10], 0
je 0x6323d1
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x14c], ecx
push 0
mov edx, dword [ebp - 0x138]
push edx
mov eax, dword [ebp - 0x134]
push eax
lea ecx, [ebp - 0x12c]
push ecx
mov edx, dword [ebp - 0x11c]
push edx
mov eax, dword [ebp - 0x118]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x14c]
call fcn.00631230
mov dword [ebp - 0x150], eax
jmp 0x63240f
mov esi, esp
push 0
mov edx, dword [ebp - 0x138]
push edx
mov eax, dword [ebp - 0x134]
push eax
lea ecx, [ebp - 0x12c]
push ecx
mov edx, dword [ebp - 0x11c]
push edx
mov eax, dword [ebp - 0x118]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp esi, esp
call fcn.00784930
mov dword [ebp - 0x150], eax
mov edx, dword [ebp - 0x150]
mov dword [ebp - 0x13c], edx
cmp dword [ebp - 0x13c], 0xffffffff
jne 0x632435
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.00632cd0
xor eax, eax
jmp 0x632450
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x13c]
mov dword [edx + 4], eax
mov ecx, dword [ebp - 8]
mov dword [ecx + 8], 1
mov eax, 1
push edx
mov ecx, ebp
push eax
lea edx, [0x632480]
call fcn.007848d0
pop eax
pop edx
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00783b00
add esp, 0x150
cmp ebp, esp
call fcn.00784930
mov esp, ebp
pop ebp
ret 0xc