Function at 0x101018d0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
test esi, esi
je 0x10101bef
xor eax, eax
mov ah, byte [esi]
movzx ecx, byte [esi + 2]
push ebx
push edi
lea edi, [esi + 8]
mov al, byte [esi + 1]
lea ebx, [esi + 0xa]
shl eax, 8
or eax, ecx
shl eax, 8
movzx ecx, byte [esi + 3]
or eax, ecx
mov dword [esi], eax
xor eax, eax
mov ah, byte [esi + 4]
movzx ecx, byte [esi + 6]
mov al, byte [esi + 5]
shl eax, 8
or eax, ecx
shl eax, 8
movzx ecx, byte [esi + 7]
or eax, ecx
mov dword [esi + 4], eax
xor eax, eax
mov ah, byte [edi]
movzx ecx, byte [esi + 0xc]
mov al, byte [esi + 9]
mov word [edi], ax
xor eax, eax
mov ah, byte [ebx]
mov al, byte [esi + 0xb]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0xd]
shl eax, 8
or eax, ecx
mov dword [ebx], eax
xor eax, eax
mov ah, byte [esi + 0xe]
movzx ecx, byte [esi + 0x10]
mov al, byte [esi + 0xf]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x11]
shl eax, 8
or eax, ecx
mov dword [esi + 0xe], eax
xor eax, eax
mov ah, byte [esi + 0x12]
movzx ecx, byte [esi + 0x14]
mov al, byte [esi + 0x13]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x15]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x18]
mov dword [esi + 0x12], eax
xor eax, eax
mov ah, byte [esi + 0x16]
mov al, byte [esi + 0x17]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x19]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x1c]
mov dword [esi + 0x16], eax
xor eax, eax
mov ah, byte [esi + 0x1a]
mov al, byte [esi + 0x1b]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x1d]
shl eax, 8
or eax, ecx
mov dword [esi + 0x1a], eax
xor eax, eax
mov ah, byte [esi + 0x1e]
mov al, byte [esi + 0x1f]
movzx ecx, byte [esi + 0x20]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x21]
shl eax, 8
or eax, ecx
mov dword [esi + 0x1e], eax
xor eax, eax
mov ah, byte [esi + 0x22]
movzx ecx, byte [esi + 0x24]
push 8
push esi
push dword [ebp + 8]
mov al, byte [esi + 0x23]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x25]
shl eax, 8
or eax, ecx
mov dword [esi + 0x22], eax
xor eax, eax
mov ah, byte [esi + 0x26]
movzx ecx, byte [esi + 0x28]
mov al, byte [esi + 0x27]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x29]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x2c]
mov dword [esi + 0x26], eax
xor eax, eax
mov ah, byte [esi + 0x2a]
mov al, byte [esi + 0x2b]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x2d]
shl eax, 8
or eax, ecx
mov dword [esi + 0x2a], eax
xor eax, eax
mov ah, byte [esi + 0x2e]
mov al, byte [esi + 0x2f]
mov word [esi + 0x2e], ax
xor eax, eax
mov ah, byte [esi + 0x30]
mov al, byte [esi + 0x31]
mov word [esi + 0x30], ax
call fcn.1014a220
mov eax, dword [ebp + 8]
push 2
add eax, 8
push edi
push eax
call fcn.1014a220
mov eax, dword [ebp + 8]
push 0x24
add eax, 0xa
push ebx
push eax
call fcn.1014a220
push 2
lea eax, [esi + 0x2e]
push eax
mov eax, dword [ebp + 8]
add eax, 0x2e
push eax
call fcn.1014a220
push 2
lea eax, [esi + 0x30]
push eax
mov eax, dword [ebp + 8]
add eax, 0x30
push eax
call fcn.1014a220
movzx ecx, byte [esi + 6]
xor eax, eax
mov ah, byte [esi + 4]
add esp, 0x3c
mov al, byte [esi + 5]
shl eax, 8
or eax, ecx
shl eax, 8
movzx ecx, byte [esi + 7]
or eax, ecx
mov dword [esi + 4], eax
xor eax, eax
mov ah, byte [edi]
movzx ecx, byte [esi + 0xc]
mov al, byte [esi + 9]
mov word [edi], ax
xor eax, eax
mov ah, byte [ebx]
mov al, byte [esi + 0xb]
shl eax, 8
or eax, ecx
shl eax, 8
movzx ecx, byte [esi + 0xd]
or eax, ecx
mov dword [ebx], eax
xor eax, eax
mov ah, byte [esi + 0xe]
movzx ecx, byte [esi + 0x10]
mov al, byte [esi + 0xf]
shl eax, 8
or eax, ecx
shl eax, 8
movzx ecx, byte [esi + 0x11]
or eax, ecx
mov dword [esi + 0xe], eax
xor eax, eax
mov ah, byte [esi + 0x12]
movzx ecx, byte [esi + 0x14]
mov al, byte [esi + 0x13]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x15]
shl eax, 8
or eax, ecx
mov dword [esi + 0x12], eax
xor eax, eax
mov ah, byte [esi + 0x16]
movzx ecx, byte [esi + 0x18]
mov al, byte [esi + 0x17]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x19]
shl eax, 8
or eax, ecx
mov dword [esi + 0x16], eax
xor eax, eax
mov ah, byte [esi + 0x1a]
movzx ecx, byte [esi + 0x1c]
mov al, byte [esi + 0x1b]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x1d]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x20]
mov dword [esi + 0x1a], eax
xor eax, eax
mov ah, byte [esi + 0x1e]
mov al, byte [esi + 0x1f]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x21]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x24]
mov dword [esi + 0x1e], eax
xor eax, eax
mov ah, byte [esi + 0x22]
mov al, byte [esi + 0x23]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x25]
shl eax, 8
or eax, ecx
mov dword [esi + 0x22], eax
xor eax, eax
mov ah, byte [esi + 0x26]
mov al, byte [esi + 0x27]
movzx ecx, byte [esi + 0x28]
pop edi
pop ebx
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x29]
shl eax, 8
or eax, ecx
mov dword [esi + 0x26], eax
xor eax, eax
mov ah, byte [esi + 0x2a]
movzx ecx, byte [esi + 0x2c]
mov al, byte [esi + 0x2b]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 0x2d]
shl eax, 8
or eax, ecx
mov dword [esi + 0x2a], eax
xor eax, eax
mov ah, byte [esi + 0x2e]
movzx ecx, byte [esi + 2]
mov al, byte [esi + 0x2f]
mov word [esi + 0x2e], ax
xor eax, eax
mov ah, byte [esi + 0x30]
mov al, byte [esi + 0x31]
mov word [esi + 0x30], ax
xor eax, eax
mov ah, byte [esi]
mov al, byte [esi + 1]
shl eax, 8
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 8
or eax, ecx
mov dword [esi], eax
pop ebp
ret