Function at 0x42e581
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push esi
mov esi, ecx
mov dword [ebp - 8], esi
movzx eax, word [esi + 0x1c]
test ax, ax
jne 0x42e86e
mov ecx, dword [0x404bc0]
push edi
xor edi, edi
mov dword [ebp - 0x10], edi
test ecx, ecx
je 0x42e602
movzx edx, byte [esi + 5]
mov dword [ebp - 4], edx
movsx eax, byte [ecx]
mov dword [ebp - 0x14], eax
cmp edx, eax
jl 0x42e5f1
push eax
lea eax, [ecx + 1]
mov edx, esi
sub edx, dword [ebp - 4]
push eax
push edx
mov dword [ebp - 0xc], edx
call sub.VCRUNTIME140.dll_memcmp
mov edx, dword [ebp - 4]
add esp, 0xc
test eax, eax
jne 0x42e5f1
mov eax, dword [ebp - 0x14]
cmp edx, eax
je 0x42e6c8
mov ecx, dword [ebp - 0xc]
cmp byte [ecx], 0x24
je 0x42e5f1
cmp byte [eax + ecx], 0x24
je 0x42e65a
inc edi
imul eax, edi, 0xc
mov dword [ebp - 0x10], edi
mov ecx, dword [eax + 0x404bc0]
test ecx, ecx
jne 0x42e5b1
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], eax
imul eax, edi, 0xc
mov dword [ebp - 0x14], eax
cmp dword [eax + 0x404bc0], 0
jne 0x42e711
push ecx
mov edx, 0x47b090
mov ecx, esi
call fcn.0042f725
mov edx, dword [esi + 0x2c]
test edx, edx
je 0x42e707
lea ecx, [edx + 6]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42e639
sub ecx, edi
cmp dword [edx + ecx + 2], 0x45444f43
jne 0x42e6f2
mov edi, 0x60000020
jmp 0x42e70c
imul eax, edi, 0xc
mov edi, 0x47b090
mov dword [ebp - 4], eax
push dword [eax + 0x404bc4]
push 0x100
push edi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
mov ecx, edi
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42e67f
mov eax, dword [ebp - 4]
sub ecx, edx
movzx esi, byte [esi + 5]
mov eax, dword [eax + 0x404bc0]
lea edi, [ecx + 0x47b090]
mov ecx, dword [ebp - 0xc]
movsx eax, byte [eax]
sub esi, eax
add eax, ecx
push esi
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 4]
add esp, 0xc
mov byte [esi + edi], 0
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0x10]
mov eax, dword [eax + 0x404bc8]
jmp 0x42e605
imul esi, edi, 0xc
push dword [esi + 0x404bc4]
push 0x100
push 0x47b090
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
mov eax, dword [esi + 0x404bc8]
add esp, 0xc
mov esi, dword [ebp - 8]
jmp 0x42e605
cmp word [edx + ecx + 3], 0x5342
jne 0x42e707
cmp byte [edx + ecx + 5], 0x53
mov edi, 0xc0000080
je 0x42e70c
mov edi, 0xc0000040
mov dword [ebp - 4], edi
jmp 0x42e714
mov edi, dword [ebp - 4]
cmp dword [esi + 0x44], 0
je 0x42e730
push dword [esi + 0x44]
push 0x100
push 0x47b090
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
add esp, 0xc
test byte [esi + 7], 0x40
je 0x42e73f
and edi, 0x7fffffff
mov dword [ebp - 4], edi
mov cl, byte [esi + 0x48]
movzx eax, cl
and eax, 2
shl eax, 8
test cl, 4
je 0x42e755
or eax, 0x40000000
test cl, 8
je 0x42e75f
or eax, 0x80000000
test cl, 0x10
je 0x42e769
or eax, 0x20000000
test cl, 0x20
je 0x42e773
or eax, 0x10000000
test cl, 0x40
je 0x42e77d
or eax, 0x8000000
test cl, cl
jns 0x42e786
or eax, 0x4000000
test byte [esi + 0x49], 1
je 0x42e791
or eax, 0x2000000
test eax, eax
je 0x42e7a0
and edi, 0xe0
or edi, eax
mov dword [ebp - 4], edi
cmp byte [esi + 0x4b], 4
je 0x42e7cf
cmp esi, dword [0x477658]
je 0x42e7cf
cmp esi, dword [0x477654]
je 0x42e7cf
cmp esi, dword [0x477650]
je 0x42e7cf
cmp esi, dword [0x47764c]
je 0x42e7cf
or edi, 0x20000
mov dword [ebp - 4], edi
mov esi, 0x47b090
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x42e7d7
sub esi, ecx
inc esi
mov ecx, esi
call fcn.004524a1
push 0x47b090
mov edi, eax
push esi
push edi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
mov edx, dword [ebp - 4]
pop ecx
pop ecx
mov ecx, edi
call fcn.0043006e
mov esi, dword [ebp - 8]
mov edx, dword [ebp - 0x14]
movzx ecx, ax
mov word [esi + 0x1c], cx
mov edx, dword [edx + 0x404bc8]
call fcn.004300a4
test dword [ebp - 4], 0x200
jne 0x42e861
movzx eax, word [esi + 0x1e]
mov ecx, dword [0x465db4]
mov eax, dword [eax*4 + 0x404b68]
mov dword [ebp - 0x14], eax
movzx eax, word [esi + 0x1c]
movsx edx, ax
call fcn.004311b9
mov edi, eax
test edi, edi
jne 0x42e85b
push 0x3ac
push 0x427d18
push eax
call dword [0x465dc4]
mov eax, dword [ebp - 0x14]
or dword [edi + 8], eax
and dword [esi + 0x24], 0
and dword [esi + 0x28], 0
mov ax, word [esi + 0x1c]
pop edi
pop esi
leave
ret