Function at 0x50e9c0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0xac
push ebx
push ebp
mov ebp, dword [esp + 0xb8]
mov ebx, eax
mov eax, dword [ebp + 0x24]
and eax, 0x7fffffff
cmp eax, 0x68
jne 0x50ed43
mov al, byte [ebx + 1]
test al, al
push esi
push edi
mov edi, 1
jne 0x50ed2e
mov cx, word [ebx + 4]
cmp cx, di
je 0x50ea07
cmp cx, 3
jne 0x50ec2f
xor esi, esi
push esi
push esi
push edi
push esi
lea ecx, [esp + 0x20]
push ecx
push 0x69e2d8
call fcn.00510c90
add esp, 0x18
test eax, eax
jne 0x50ea33
lea edx, [esp + 0x68]
mov dword [esp + 0x10], edx
mov word [ebx + 6], si
mov word [ebx + 8], di
cmp dword [0x9eeee4], edi
mov eax, dword [esp + 0x10]
mov byte [eax + 0xc], 1
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x40], ebp
mov edx, dword [esp + 0x10]
mov dword [edx + 0x44], esi
mov al, byte [ebx]
mov ecx, dword [esp + 0x10]
mov byte [ecx + 0x48], al
mov edx, dword [esp + 0x10]
jne 0x50ea6a
mov dword [edx + 0x4c], esi
mov eax, dword [esp + 0x10]
mov dword [eax + 0x50], edi
jmp 0x50ea7c
movzx ecx, word [ebx + 6]
mov dword [edx + 0x4c], ecx
movzx eax, word [ebx + 8]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x50], eax
mov dl, byte [ebx + 1]
mov eax, dword [esp + 0x10]
xorps xmm0, xmm0
mov byte [eax + 0xd], dl
mov ecx, dword [esp + 0x10]
mov dword [ecx + 8], esi
mov edx, dword [esp + 0x10]
mov byte [edx + 0x49], 0xff
mov eax, dword [ebp + 0x28]
lea ecx, [esp + 0x28]
movss dword [esp + 0x60], xmm0
movss dword [esp + 0x5c], xmm0
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x54], xmm0
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x38], xmm0
movss dword [esp + 0x34], xmm0
movss dword [esp + 0x30], xmm0
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [0x649444]
add ebp, 0xa0
push ecx
mov edi, ebp
mov esi, ecx
mov dword [esp + 0x28], eax
movss dword [esp + 0x68], xmm0
movss dword [esp + 0x54], xmm0
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x2c], xmm0
call fcn.0050c6c0
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
push edx
mov ecx, ebx
push 9
mov edx, ebp
lea ebx, [esp + 0x20]
call fcn.0050d2c0
add esp, 0xc
mov eax, esi
push eax
mov ecx, ebx
push ecx
mov edx, ebx
push edx
call fcn.005932e0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc0]
movss xmm0, dword [ecx + 0x90]
addss xmm0, dword [esp + 0x14]
mov edi, dword [esp + 0x24]
movss dword [eax + 0x10], xmm0
movss xmm0, dword [ecx + 0x94]
addss xmm0, dword [esp + 0x18]
add eax, 0x10
movss dword [eax + 4], xmm0
movss xmm0, dword [ecx + 0x98]
addss xmm0, dword [esp + 0x1c]
movss dword [eax + 8], xmm0
movss xmm0, dword [ecx + 0x9c]
addss xmm0, dword [esp + 0x20]
movss dword [eax + 0xc], xmm0
mov edx, dword [esp + 0x10]
push 9
mov ebx, ebp
lea eax, [esp + 0x18]
call fcn.0050d770
mov eax, dword [esp + 0x14]
movss xmm0, dword [ebp]
addss xmm0, dword [esp + 0x18]
add esp, 4
add eax, 0x20
movss dword [eax], xmm0
movss xmm0, dword [ebp + 4]
addss xmm0, dword [esp + 0x18]
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp + 8]
addss xmm0, dword [esp + 0x1c]
movss dword [eax + 8], xmm0
movss xmm0, dword [ebp + 0xc]
addss xmm0, dword [esp + 0x20]
movss dword [eax + 0xc], xmm0
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x68]
cmp eax, ecx
push eax
jne 0x50ec1c
call fcn.0050e7b0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xac
ret
call fcn.0050c880
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xac
ret
test al, al
jne 0x50ed2e
cmp word [ebx + 4], 2
jne 0x50ed2e
movss xmm3, dword [0x649444]
movss dword [ebp + 0x9c], xmm3
movss xmm0, dword [0x9eee10]
movss xmm1, dword [0x9eee08]
movss xmm2, dword [0x9eee0c]
lea edi, [ebp + 0x30]
movss dword [0x9eee14], xmm3
subss xmm0, dword [edi + 0x68]
subss xmm1, dword [edi + 0x60]
subss xmm2, dword [edi + 0x64]
subss xmm0, dword [0x653124]
xor ebx, ebx
cmp dword [ebp + 0x20], ebx
movss dword [esp + 0x14], xmm1
movss dword [esp + 0x18], xmm2
movss dword [esp + 0x1c], xmm0
jbe 0x50ed41
lea esi, [edi + 0x68]
jmp 0x50ecd0
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
movss xmm3, dword [0x649444]
jmp 0x50ecd0
movss xmm4, dword [esi - 8]
subss xmm4, xmm1
movss dword [esi - 8], xmm4
movss xmm1, dword [esi - 4]
subss xmm1, xmm2
movss dword [esi - 4], xmm1
movss xmm1, dword [esi]
subss xmm1, xmm0
movss dword [esi], xmm1
movss xmm0, dword [esi + 4]
subss xmm0, xmm3
push edi
movss dword [esi + 4], xmm0
call fcn.0050c950
add ebx, 1
add esp, 4
add edi, 0x90
add esi, 0x90
cmp ebx, dword [ebp + 0x20]
jb 0x50ecae
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xac
ret
cmp al, 0xc
jne 0x50ed41
push ebp
push 0x50db50
push edi
call fcn.005287e0
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xac
ret