Function at 0x458ab0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x14
mov eax, dword [esp + 0x18]
xorps xmm0, xmm0
push ebx
mov ebx, dword [esp + 0x24]
push ebp
mov eax, dword [eax + 0x14]
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], eax
movups xmmword [ebp + 0x10], xmm0
push esi
movq qword [ebp + 0x20], xmm0
mov byte [ebp + 0xa], al
mov ebx, dword [ebx]
mov eax, ebx
shr eax, 0x10
and eax, 3
push edi
sub eax, 1
je 0x458b0b
sub eax, 1
je 0x458b01
mov dword [esp + 0x18], 0
jmp 0x458b13
mov dword [esp + 0x18], 2
jmp 0x458b13
mov dword [esp + 0x18], 1
mov edi, dword [esp + 0x2c]
mov ecx, ebx
mov eax, dword [edi]
nop dword [eax + eax]
movzx esi, cx
shl esi, 4
add esi, eax
mov ecx, dword [esi]
mov edx, ecx
shr edx, 0x1c
cmp edx, 8
je 0x458b20
mov eax, ecx
and eax, 0xf8000000
cmp eax, 0x38000000
je 0x458ea4
and ecx, 0xf4000000
cmp ecx, 0x34000000
je 0x458b6f
cmp edx, 1
je 0x458b6f
cmp ecx, 0x4000000
jne 0x458bd1
cmp dword [esi + 4], 4
setne al
inc al
mov byte [ebp + 0xa], al
jmp 0x458bd1
mov edi, dword [esi + 4]
mov eax, dword [esp + 0x2c]
lea edx, [edi + 8]
mov ecx, dword [eax + 0xc]
call fcn.0040d8d0
mov ecx, dword [esp + 0x28]
mov ebp, dword [esp + 0x28]
mov word [eax + 6], bx
lea ebx, [eax + 8]
mov byte [eax + 5], 0xa
mov edx, dword [ecx + 0x14]
lea ecx, [edx + 8]
mov dword [ebp + 0x14], ecx
mov ebp, dword [esp + 0x34]
mov dword [edx], eax
mov dword [edx + 4], 0xfffffff5
mov eax, dword [esi]
and eax, 0xf0000000
cmp eax, 0x10000000
cmp edi, 8
mov edi, dword [esp + 0x2c]
seta al
mov byte [ebp + 9], al
jbe 0x458bd1
mov eax, 1
mov dword [ebp + 0x28], ebx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x30]
movzx ebx, word [eax + 8]
test ebx, ebx
je 0x458c00
mov edx, dword [edi]
nop
mov ecx, ebx
add ecx, ecx
mov eax, dword [edx + ecx*8]
and eax, 0xf0000000
cmp eax, 0x80000000
jne 0x458bfc
movzx ebx, word [edx + ecx*8 + 8]
test ebx, ebx
jne 0x458be0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x1c], 1
mov ebp, dword [ecx + 0x10]
add ebp, 8
cmp ebp, dword [esp + 0x20]
jae 0x458e6f
nop dword [eax]
test ebx, ebx
je 0x458c37
shl ebx, 4
add ebx, dword [edi]
mov eax, ebx
movzx ebx, word [eax + 8]
movzx esi, word [eax]
jmp 0x458cff
test dword [eax], 0x800000
je 0x458eb2
mov eax, dword [ebp + 4]
cmp eax, 0xfffffff2
ja 0x458c55
mov esi, 0xe
jmp 0x458cff
cmp eax, 0xfffffff5
jne 0x458cdf
mov eax, dword [ebp]
movzx esi, word [eax + 6]
mov edx, esi
shl edx, 4
add edx, dword [edi]
mov ecx, dword [edx]
mov eax, ecx
and eax, 0xfc000000
cmp eax, 0x30000000
jne 0x458c99
movzx eax, cx
or eax, 0x20000
push 4
add eax, 0x20000000
push eax
push edi
call fcn.00414030
add esp, 0xc
mov esi, eax
jmp 0x458cff
mov eax, ecx
shr eax, 0x1c
cmp eax, 1
je 0x458cc3
cmp eax, 6
je 0x458cc3
and ecx, 0xf4000000
cmp ecx, 0x4000000
jne 0x458cff
cmp dword [edx + 4], 4
jne 0x458cff
mov esi, 0xe
jmp 0x458cff
or esi, 0x20000
push 4
add esi, 0x20000000
push esi
push edi
call fcn.00414030
add esp, 0xc
mov esi, eax
jmp 0x458cff
cmp eax, 0xfffffffb
jne 0x458ceb
mov esi, 0x13
jmp 0x458cff
cmp eax, 0xfffffffe
je 0x458cfa
mov esi, 0x11
cmp eax, 0xfffffffd
jne 0x458cff
mov esi, 3
mov edx, dword [edi]
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
jne 0x458d2e
movzx esi, cx
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
je 0x458d16
mov edx, dword [esi + 4]
mov edi, ecx
shr edi, 0x1c
test edi, edi
jne 0x458dca
cmp edx, 8
ja 0x458ea4
mov eax, dword [esp + 0x10]
add edx, 3
shr edx, 2
mov dword [esp + 0x10], eax
test ecx, 0x4000000
je 0x458def
mov edi, dword [esp + 0x14]
lea eax, [edx + edi]
cmp eax, 0x20
ja 0x458ea4
mov ecx, dword [esp + 0x34]
add edi, 0xa
mov dword [esp + 0x14], eax
lea edi, [ecx + edi*4]
mov eax, dword [esp + 0x1c]
shl eax, 8
push eax
mov eax, dword [esp + 0x30]
push ebp
push edi
push esi
push eax
call fcn.00450620
mov ecx, dword [esi]
add esp, 0x14
test ecx, 0xf4000000
jne 0x458e52
mov eax, dword [esi + 4]
cmp eax, 4
jae 0x458e52
test ecx, 0x800000
je 0x458e43
cmp eax, 1
jne 0x458e3e
movzx eax, byte [edi]
jmp 0x458e50
mov eax, ecx
and eax, 0xf8000000
cmp eax, 0x38000000
je 0x458ea4
cmp edi, 1
jne 0x458dfc
mov eax, dword [esp + 0x18]
add edx, 3
mov dword [esp + 0x10], eax
shr edx, 2
mov ecx, eax
cmp edx, 1
ja 0x458d61
jmp 0x458e20
and ecx, 0xf4000000
cmp ecx, 0x34000000
jne 0x458e15
add edx, 3
shr edx, 2
jmp 0x458d61
mov eax, dword [esp + 0x10]
mov edx, 1
mov ecx, eax
inc eax
cmp eax, dword [esp + 0x18]
ja 0x458d61
mov edi, dword [esp + 0x34]
add edi, 0x20
add dword [esp + 0x10], edx
lea edi, [edi + ecx*4]
jmp 0x458d7f
movzx eax, word [edi]
jmp 0x458e50
cmp eax, 1
jne 0x458e4d
movsx eax, byte [edi]
jmp 0x458e50
movsx eax, word [edi]
mov dword [edi], eax
inc dword [esp + 0x1c]
add ebp, 8
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
cmp ebp, dword [esp + 0x20]
jb 0x458c20
mov ecx, dword [esp + 0x28]
test ebx, ebx
jne 0x458eb6
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x14]
mov byte [ecx + 8], al
mov dword [ecx + 4], 4
cmp eax, 1
jbe 0x458e9a
lea eax, [eax*4 + 0xb]
and eax, 0xfffffff0
add eax, 4
mov dword [ecx + 4], eax
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14
ret
push 0xeb3
push dword [esp + 0x2c]
call fcn.00409650
mov ecx, dword [esp + 0x28]
push 0xd94
push ecx
call fcn.00409650
int3