Function at 0x10021d30
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1f44
call fcn.1005e3c0
mov eax, dword [0x100ae1c0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 0xc]
call fcn.10039510
mov ecx, eax
call dword [sym.imp.HCCore.dll_public:_int___thiscall_NetSDK::CCtrlCoreBase::CheckInit_void_]
test eax, eax
jne 0x10021d70
or eax, 0xffffffff
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1005d9b3
mov esp, ebp
pop ebp
ret 8
push ebx
call fcn.10039510
mov ecx, eax
call dword [sym.imp.HCCore.dll_public:_int____thiscall_NetSDK::CCtrlCoreBase::GetUseCount_void_]
push eax
lea ecx, [ebp - 0x1b6c]
call sub.HCCore.dll_public:_void___thiscall_NetSDK::CUseCountAutoDec::constructor_int__
mov ebx, dword [ebp + 8]
push ebx
call sub.HCCore.dll_COM_User_CheckID
test eax, eax
je 0x10021da2
test esi, esi
jne 0x10021dc4
push 0x11
call sub.HCCore.dll__Core_SetLastError_4
or esi, 0xffffffff
lea ecx, [ebp - 0x1b6c]
call sub.HCCore.dll_public:_void___thiscall_NetSDK::CUseCountAutoDec::destructor_void_
mov ecx, dword [ebp - 4]
mov eax, esi
pop ebx
xor ecx, ebp
pop esi
call fcn.1005d9b3
mov esp, ebp
pop ebp
ret 8
movzx eax, word [esi + 4]
xorps xmm0, xmm0
mov word [ebp - 0x10], ax
mov al, byte [esi + 6]
movq qword [ebp - 0xe], xmm0
mov byte [ebp - 0xe], al
mov al, byte [esi + 7]
mov byte [ebp - 0xd], al
mov al, byte [esi + 8]
mov byte [ebp - 0xc], al
mov al, byte [esi + 9]
mov byte [ebp - 0xb], al
mov al, byte [esi + 0xa]
mov byte [ebp - 0xa], al
mov al, byte [esi + 0xb]
mov byte [ebp - 9], al
mov al, byte [esi + 0xe]
mov word [ebp - 6], 0
mov byte [ebp - 6], al
mov al, byte [esi + 0xf]
mov byte [ebp - 5], al
movzx eax, word [esi + 0xc]
mov word [ebp - 8], ax
movzx eax, word [esi + 0x10]
mov word [ebp - 0x1c], ax
mov al, byte [esi + 0x12]
movq qword [ebp - 0x1a], xmm0
mov byte [ebp - 0x1a], al
mov al, byte [esi + 0x13]
mov byte [ebp - 0x19], al
mov al, byte [esi + 0x14]
mov byte [ebp - 0x18], al
mov al, byte [esi + 0x15]
mov byte [ebp - 0x17], al
mov al, byte [esi + 0x16]
mov byte [ebp - 0x16], al
mov al, byte [esi + 0x17]
mov byte [ebp - 0x15], al
mov al, byte [esi + 0x1a]
mov word [ebp - 0x12], 0
mov byte [ebp - 0x12], al
mov al, byte [esi + 0x1b]
mov byte [ebp - 0x11], al
movzx eax, word [esi + 0x18]
mov word [ebp - 0x14], ax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x10]
push eax
call sub.HCCoreDevCfg.dll__CheckTimeV50Seq_8
test eax, eax
je 0x10021d9b
push edi
push ebx
call sub.HCCore.dll__Core_GetDevSupport6_4
push 0x1964
mov dword [ebp - 0x1b68], eax
lea eax, [ebp - 0x1b64]
push 0
push eax
call fcn.1005ea40
add esp, 0xc
push 7
push ebx
call sub.HCCore.dll__Core_GetDevSupportFromArr_8
test al, 0x10
je 0x10021ebd
mov ecx, 0x10f
lea edi, [ebp - 0x1b60]
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x1b64], 0x90415
jmp 0x10021f54
xor eax, eax
test byte [ebp - 0x1b68], 4
je 0x10021f0d
push 0x3d6
push eax
mov word [ebp - 0x1f44], ax
lea eax, [ebp - 0x1f42]
push eax
call fcn.1005ea40
lea eax, [ebp - 0x1f44]
push eax
push esi
call fcn.10021280
mov ecx, 0xf6
lea esi, [ebp - 0x1f44]
lea edi, [ebp - 0x1b60]
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x1b64], 0x90414
jmp 0x10021f51
push 0x1e2
mov word [ebp - 0x200], ax
lea eax, [ebp - 0x1fe]
push 0
push eax
call fcn.1005ea40
lea eax, [ebp - 0x200]
push eax
push esi
call fcn.10020fe0
mov ecx, 0x79
lea esi, [ebp - 0x200]
lea edi, [ebp - 0x1b60]
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x1b64], 0x90413
add esp, 0x14
lea eax, [ebp - 0x1b64]
push eax
push ebx
call sub.HCCoreDevCfg.dll_Core_FindFile
add esp, 8
mov esi, eax
pop edi
jmp 0x10021da5