Function at 0x4aa2d0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x60
mov eax, dword [edx + 4]
mov edi, dword [edx]
mov dword [esp + 0x3c], ecx
test eax, eax
je 0x4aa33c
movzx edx, word [edx + 8]
mov ecx, 0x56ca90
movd xmm0, ecx
mov word [esp + 2], dx
nop dword [eax + eax]
mov ebx, dword [eax + 0x18]
mov esi, dword [eax + 0x1c]
movzx edx, word [ebx]
cmp edx, 0x17
je 0x4aa388
cmp edx, 2
je 0x4aa350
movdqa xmm1, xmm3
movdqa xmm2, xmm0
test esi, esi
mov eax, esi
pand xmm1, xmmword [0x542410]
por xmm1, xmmword [0x542420]
punpcklqdq xmm2, xmm1
shufps xmm2, xmm3, 0xe2
movaps xmm3, xmm2
jne 0x4aa300
push edi
call sub.ws2_32.dll_freeaddrinfo
mov eax, 4
xor ebx, ebx
xor ecx, ecx
jmp 0x4aa5fb
cmp dword [eax + 0x10], 0x10
mov dword [esp + 8], edi
jb 0x4aa653
movzx eax, word [ebx + 4]
mov dword [esp + 0x40], eax
movzx eax, word [ebx + 6]
xor ebx, ebx
movd xmm0, eax
movzx eax, word [esp + 2]
mov dword [esp + 4], eax
movss xmm3, xmm0
movd edi, xmm0
movaps xmmword [esp + 0x20], xmm3
jmp 0x4aa3c8
cmp dword [eax + 0x10], 0x1b
mov dword [esp + 8], edi
jbe 0x4aa664
movdqu xmm0, xmmword [ebx + 8]
mov eax, dword [ebx + 4]
mov edx, dword [ebx + 0x18]
mov bx, 1
mov dword [esp + 0x40], 0
movd edi, xmm0
pextrw ecx, xmm0, 1
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
movdqa xmmword [esp + 0x20], xmm0
mov dword [esp + 4], ecx
movzx eax, byte [0x5c91e8]
mov ecx, pe_nt_image_headers32
mov edx, 4
call fcn.0041aa20
test eax, eax
je 0x4aa617
shl edi, 0x10
movdqa xmm2, xmmword [esp + 0x20]
mov word [eax], bx
mov ecx, eax
mov ebx, dword [esp + 0xc]
movzx edx, word [esp + 2]
add edi, dword [esp + 0x40]
test esi, esi
pshufd xmm1, xmm2, 0xff
pshufd xmm0, xmm2, 0xf9
mov dword [eax + 2], edi
mov eax, dword [esp + 4]
mov edi, dword [esp + 0x10]
mov word [ecx + 6], ax
movd dword [ecx + 0x10], xmm1
pshufd xmm1, xmm2, 0xaa
movd dword [ecx + 8], xmm0
movd dword [ecx + 0xc], xmm1
mov dword [ecx + 0x14], ebx
mov ebx, 1
mov dword [ecx + 0x18], edi
mov word [ecx + 0x1c], dx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], 4
mov dword [esp + 0x1c], 1
je 0x4aa5ea
mov eax, 0x56ca90
movd xmm0, eax
movdqa xmmword [esp + 0x40], xmm0
jmp 0x4aa4df
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov eax, ebx
shl edi, 0x10
pshufd xmm0, xmmword [esp + 0x20], 0xf9
inc ebx
shl eax, 5
add edi, dword [esp + 4]
test esi, esi
mov word [ecx + eax], dx
mov edx, dword [esp + 0x10]
pshufd xmm1, xmm0, 0xee
mov dword [ecx + eax + 2], edi
movzx edi, word [esp + 2]
mov word [ecx + eax + 6], dx
mov edx, dword [esp + 0x34]
movd dword [ecx + eax + 0x10], xmm1
pshufd xmm1, xmm0, 0x55
movd dword [ecx + eax + 8], xmm0
movd dword [ecx + eax + 0xc], xmm1
mov dword [ecx + eax + 0x14], edx
mov edx, dword [esp + 0x38]
mov dword [ecx + eax + 0x18], edx
mov word [ecx + eax + 0x1c], di
mov dword [esp + 0x1c], ebx
je 0x4aa5ea
mov edx, esi
nop word cs:[eax + eax]
nop dword [eax + eax]
mov eax, dword [edx + 0x18]
mov esi, dword [edx + 0x1c]
movzx edi, word [eax]
cmp edi, 0x17
je 0x4aa590
cmp edi, 2
je 0x4aa540
movaps xmm2, xmmword [esp + 0x20]
movaps xmm1, xmmword [esp + 0x40]
test esi, esi
mov edx, esi
movaps xmm0, xmm2
andps xmm0, xmmword [0x542410]
orps xmm0, xmmword [0x542420]
movlhps xmm1, xmm0
shufps xmm1, xmm2, 0xe2
movaps xmmword [esp + 0x20], xmm1
jne 0x4aa4f0
jmp 0x4aa5ea
cmp dword [edx + 0x10], 0x10
jb 0x4aa628
movzx edx, word [eax + 4]
movzx eax, word [eax + 6]
movaps xmm1, xmmword [esp + 0x20]
mov dword [esp + 0xc], 0
movd xmm0, eax
movzx eax, word [esp + 2]
mov dword [esp + 0x10], eax
mov dword [esp + 4], edx
movss xmm1, xmm0
movd edi, xmm0
movaps xmmword [esp + 0x20], xmm1
cmp dword [esp + 0x18], ebx
jne 0x4aa474
jmp 0x4aa5da
cmp dword [edx + 0x10], 0x1b
jbe 0x4aa639
movdqu xmm0, xmmword [eax + 8]
mov edx, dword [eax + 4]
mov eax, dword [eax + 0x18]
mov dword [esp + 4], 0
mov dword [esp + 0x38], eax
pextrw eax, xmm0, 1
movd edi, xmm0
mov dword [esp + 0x34], edx
movdqa xmmword [esp + 0x20], xmm0
mov dword [esp + 0x10], eax
mov ax, 1
mov dword [esp + 0xc], eax
cmp dword [esp + 0x18], ebx
jne 0x4aa474
lea ecx, [esp + 0x14]
mov edx, ebx
call fcn.004aa6d0
jmp 0x4aa470
push dword [esp + 8]
call sub.ws2_32.dll_freeaddrinfo
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x3c]
shl ebx, 5
add ebx, eax
mov dword [edx], eax
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
mov dword [edx + 0xc], ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, 4
mov edx, pe_nt_image_headers32
call fcn.0041b1c0
jmp 0x4aa67c
mov eax, 0x56ca1c
mov edx, 0x42
mov ecx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in___library_std_src_sys_common_net.rs
jmp 0x4aa648
mov eax, 0x56ca70
mov edx, 0x43
mov ecx, 0x56ca2c
push eax
call fcn.00445340
add esp, 4
jmp 0x4aa67c
mov eax, 0x56ca1c
mov edx, 0x42
mov ecx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in___library_std_src_sys_common_net.rs
jmp 0x4aa673
mov eax, 0x56ca70
mov edx, 0x43
mov ecx, 0x56ca2c
push eax
call fcn.00445340
add esp, 4
ud2